tor-browser

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

test_serve.py (1744B)


      1 # This Source Code Form is subject to the terms of the Mozilla Public
      2 # License, v. 2.0. If a copy of the MPL was not distributed with this
      3 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
      4 
      5 import mozunit
      6 
      7 from marionette_harness.runner import serve
      8 from marionette_harness.runner.serve import iter_proc, iter_url
      9 
     10 
     11 def teardown_function(func):
     12    for server in [s for s in iter_proc(serve.servers) if s.is_alive]:
     13        server.stop()
     14        server.kill()
     15 
     16 
     17 def test_registered_servers():
     18    # [(name, factory), ...]
     19    assert serve.registered_servers[0][0] == "http"
     20    assert serve.registered_servers[1][0] == "https"
     21 
     22 
     23 def test_globals():
     24    assert serve.default_doc_root is not None
     25    assert serve.registered_servers is not None
     26    assert serve.servers is not None
     27 
     28 
     29 def test_start():
     30    serve.start()
     31    assert len(serve.servers) == 2
     32    assert "http" in serve.servers
     33    assert "https" in serve.servers
     34    for url in iter_url(serve.servers):
     35        assert isinstance(url, str)
     36 
     37 
     38 def test_start_with_custom_root(tmpdir_factory):
     39    tdir = tmpdir_factory.mktemp("foo")
     40    serve.start(str(tdir))
     41    for server in iter_proc(serve.servers):
     42        assert server.doc_root == tdir
     43 
     44 
     45 def test_iter_proc():
     46    serve.start()
     47    for server in iter_proc(serve.servers):
     48        server.stop()
     49 
     50 
     51 def test_iter_url():
     52    serve.start()
     53    for url in iter_url(serve.servers):
     54        assert isinstance(url, str)
     55 
     56 
     57 def test_where_is():
     58    serve.start()
     59    assert serve.where_is("/") == serve.servers["http"][1].get_url("/")
     60    assert serve.where_is("/", on="https") == serve.servers["https"][1].get_url("/")
     61 
     62 
     63 if __name__ == "__main__":
     64    mozunit.main("-p", "no:terminalreporter", "--log-tbpl=-", "--capture", "no")