diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/test_cmdline.py | 56 | ||||
-rw-r--r-- | test/tutils.py | 2 |
2 files changed, 57 insertions, 1 deletions
diff --git a/test/test_cmdline.py b/test/test_cmdline.py new file mode 100644 index 00000000..d1c79d77 --- /dev/null +++ b/test/test_cmdline.py @@ -0,0 +1,56 @@ +from libpathod import cmdline +import tutils +import cStringIO +import mock + + +def test_pathod(): + assert cmdline.args_pathod(["pathod"]) + + +@mock.patch("argparse.ArgumentParser.error") +def test_pathoc(perror): + assert cmdline.args_pathoc(["pathoc", "foo.com", "get:/"]) + s = cStringIO.StringIO() + tutils.raises(SystemExit, cmdline.args_pathoc, ["pathoc", "--show-uas"], s, s) + + a = cmdline.args_pathoc(["pathoc", "foo.com:8888", "get:/"]) + assert a.port == 8888 + + a = cmdline.args_pathoc(["pathoc", "foo.com:xxx", "get:/"]) + assert perror.called + perror.reset_mock() + + a = cmdline.args_pathoc(["pathoc", "-I", "10, 20", "foo.com:8888", "get:/"]) + assert a.ignorecodes == [10, 20] + + a = cmdline.args_pathoc(["pathoc", "-I", "xx, 20", "foo.com:8888", "get:/"]) + assert perror.called + perror.reset_mock() + + a = cmdline.args_pathoc(["pathoc", "-c", "foo:10", "foo.com:8888", "get:/"]) + assert a.connect_to == ["foo", 10] + + a = cmdline.args_pathoc(["pathoc", "-c", "foo", "foo.com:8888", "get:/"]) + assert perror.called + perror.reset_mock() + + a = cmdline.args_pathoc(["pathoc", "-c", "foo:bar", "foo.com:8888", "get:/"]) + assert perror.called + perror.reset_mock() + + a = cmdline.args_pathoc( + [ + "pathoc", + "foo.com:8888", + tutils.test_data.path("data/request") + ] + ) + assert len(a.requests) == 1 + + tutils.raises( + SystemExit, + cmdline.args_pathoc, + ["pathoc", "foo.com", "invalid"], + s, s + ) diff --git a/test/tutils.py b/test/tutils.py index 5876e5e6..c1e55a61 100644 --- a/test/tutils.py +++ b/test/tutils.py @@ -104,7 +104,7 @@ def raises(exc, obj, *args, **kwargs): """ try: apply(obj, args, kwargs) - except Exception, v: + except (Exception, SystemExit), v: if isinstance(exc, basestring): if exc.lower() in str(v).lower(): return |