summaryrefslogtreecommitdiffstats
path: root/tests/ssh/test_parse_hostport.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ssh/test_parse_hostport.py')
-rw-r--r--tests/ssh/test_parse_hostport.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/ssh/test_parse_hostport.py b/tests/ssh/test_parse_hostport.py
new file mode 100644
index 0000000..759bb07
--- /dev/null
+++ b/tests/ssh/test_parse_hostport.py
@@ -0,0 +1,20 @@
+from sshuttle.ssh import parse_hostport
+
+
+def test_host_only():
+ assert parse_hostport("host") == (None, None, None, "host")
+ assert parse_hostport("1.2.3.4") == (None, None, None, "1.2.3.4")
+ assert parse_hostport("2001::1") == (None, None, None, "2001::1")
+ assert parse_hostport("[2001::1]") == (None, None, None, "2001::1")
+
+
+def test_host_and_port():
+ assert parse_hostport("host:22") == (None, None, 22, "host")
+ assert parse_hostport("1.2.3.4:22") == (None, None, 22, "1.2.3.4")
+ assert parse_hostport("[2001::1]:22") == (None, None, 22, "2001::1")
+
+
+def test_username_and_host():
+ assert parse_hostport("user@host") == ("user", None, None, "host")
+ assert parse_hostport("user:@host") == ("user", None, None, "host")
+ assert parse_hostport("user:pass@host") == ("user", "pass", None, "host")