Merge remote branch 'cros/upstream' into autotest-rebase
Merged to upstream trunk@5066, from trunk@4749.
There is no way I could enlist each individual CL from the upstream here since it will blow up the changelist description field.
BUG=
TEST=
Had patched this CL into a fresh cut client to avoid any side effect.
run_remote_test bvt from both emerged location and third_party/autotest/file.
Both test passed!
We should also keep any eye on this to see how it gets propagated into cautotest server.
TBR=dalecurtis
Change-Id: I72f2bc7a9de530178484aea1bfb5ace68bcad029
diff --git a/server/base_utils_unittest.py b/server/base_utils_unittest.py
index 111dfbe..feb9ace 100755
--- a/server/base_utils_unittest.py
+++ b/server/base_utils_unittest.py
@@ -26,5 +26,37 @@
self.assertEquals(self.failures, failures)
+ # parse_machine() test cases
+ def test_parse_machine_good(self):
+ '''test that parse_machine() is outputting the correct data'''
+ gooddata = (('host', ('host', 'root', '', 22)),
+ ('host:21', ('host', 'root', '', 21)),
+ ('user@host', ('host', 'user', '', 22)),
+ ('user:pass@host', ('host', 'user', 'pass', 22)),
+ ('user:pass@host:1234', ('host', 'user', 'pass', 1234)),
+ )
+ for machine, result in gooddata:
+ self.assertEquals(utils.parse_machine(machine), result)
+
+
+ def test_parse_machine_override(self):
+ '''Test that parse_machine() defaults can be overridden'''
+ self.assertEquals(utils.parse_machine('host', 'bob', 'foo', 1234),
+ ('host', 'bob', 'foo', 1234))
+
+
+ def test_parse_machine_bad(self):
+ '''test that bad data passed to parse_machine() will raise an exception'''
+ baddata = (('host:port', ValueError), # pass a non-integer string for port
+ ('host:22:33', ValueError), # pass two ports
+ (':22', ValueError), # neglect to pass a hostname #1
+ ('user@', ValueError), # neglect to pass a hostname #2
+ ('user@:22', ValueError), # neglect to pass a hostname #3
+ (':pass@host', ValueError), # neglect to pass a username
+ )
+ for machine, exception in baddata:
+ self.assertRaises(exception, utils.parse_machine, machine)
+
+
if __name__ == "__main__":
unittest.main()