mitmproxy/test/test_test.py
2012-06-21 15:39:40 +12:00

56 lines
1.7 KiB
Python

import time, logging
import requests
from libpathod import test, version, utils
import tutils
logging.disable(logging.CRITICAL)
class TestDaemonManual:
def test_simple(self):
d = test.Daemon()
rsp = requests.get("http://localhost:%s/p/202"%d.port)
assert rsp.ok
assert rsp.status_code == 202
d.shutdown()
tutils.raises(requests.ConnectionError, requests.get, "http://localhost:%s/p/202"%d.port)
def test_startstop_ssl(self):
d = test.Daemon(ssl=True)
rsp = requests.get("https://localhost:%s/p/202"%d.port, verify=False)
assert rsp.ok
assert rsp.status_code == 202
d.shutdown()
tutils.raises(requests.ConnectionError, requests.get, "http://localhost:%s/p/202"%d.port)
def test_startstop_ssl_explicit(self):
ssloptions = dict(
keyfile = utils.data.path("resources/server.key"),
certfile = utils.data.path("resources/server.crt"),
)
d = test.Daemon(ssl=ssloptions)
rsp = requests.get("https://localhost:%s/p/202"%d.port, verify=False)
assert rsp.ok
assert rsp.status_code == 202
d.shutdown()
tutils.raises(requests.ConnectionError, requests.get, "http://localhost:%s/p/202"%d.port)
class TestDaemon:
@classmethod
def setUpAll(self):
self.d = test.Daemon()
@classmethod
def tearDownAll(self):
self.d.shutdown()
def test_info(self):
assert tuple(self.d.info()["version"]) == version.IVERSION
def test_logs(self):
rsp = requests.get("http://localhost:%s/p/202"%self.d.port)
assert len(self.d.log()) == 1
assert self.d.clear_log()
assert len(self.d.log()) == 0