tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

invalid.py (1727B)


      1 from copy import deepcopy
      2 
      3 import pytest
      4 from tests.support.asserts import assert_error
      5 
      6 
      7 @pytest.mark.parametrize(
      8    "headers",
      9    [
     10        {"origin": "http://localhost"},
     11        {"origin": "http://localhost:8000"},
     12        {"origin": "http://127.0.0.1"},
     13        {"origin": "http://127.0.0.1:8000"},
     14        {"origin": "null"},
     15        {"ORIGIN": "https://example.org"},
     16        {"host": "example.org:4444"},
     17        {"Host": "example.org"},
     18        {"host": "localhost:80"},
     19        {"host": "localhost"},
     20        {"content-type": "application/x-www-form-urlencoded"},
     21        {"content-type": "multipart/form-data"},
     22        {"content-type": "text/plain"},
     23        {"Content-TYPE": "APPLICATION/x-www-form-urlencoded"},
     24        {"content-type": "MULTIPART/FORM-DATA"},
     25        {"CONTENT-TYPE": "TEXT/PLAIN"},
     26        {"content-type": "text/plain ; charset=utf-8"},
     27        {"content-type": "text/plain;foo"},
     28        {"content-type": "text/PLAIN  ;  foo;charset=utf8"},
     29    ],
     30 )
     31 def test_invalid(new_session, configuration, headers):
     32    response, _ = new_session(
     33        {"capabilities": {"alwaysMatch": dict(configuration["capabilities"])}},
     34        headers=headers,
     35    )
     36    assert_error(response, "unknown error")
     37 
     38 
     39 @pytest.mark.parametrize(
     40    "argument",
     41    [
     42        "--marionette",
     43        "--remote-debugging-port",
     44        "--remote-allow-hosts",
     45        "--remote-allow-origins",
     46    ],
     47 )
     48 def test_forbidden_arguments(configuration, new_session, argument):
     49    capabilities = deepcopy(configuration["capabilities"])
     50    capabilities["moz:firefoxOptions"]["args"] = [argument]
     51 
     52    response, _ = new_session({"capabilities": {"alwaysMatch": capabilities}})
     53    assert_error(response, "invalid argument")