Lines Matching +full:class +full:- +full:utils
3 # pylint: disable=missing-docstring
18 # mock 1.0.0 (in site-packages/chromite/third_party/mock.py)
27 from autotest_lib.client.common_lib import autotemp, utils
30 metrics = utils.metrics_mock
33 class test_read_one_line(unittest.TestCase):
36 self.god.stub_function(utils, "open")
44 self.assertEqual(utils.ip_to_long('0.0.0.0'), 0)
45 self.assertEqual(utils.ip_to_long('255.255.255.255'), 4294967295)
46 self.assertEqual(utils.ip_to_long('192.168.0.1'), 3232235521)
47 self.assertEqual(utils.ip_to_long('1.2.4.8'), 16909320)
51 self.assertEqual(utils.long_to_ip(0), '0.0.0.0')
52 self.assertEqual(utils.long_to_ip(4294967295), '255.255.255.255')
53 self.assertEqual(utils.long_to_ip(3232235521), '192.168.0.1')
54 self.assertEqual(utils.long_to_ip(16909320), '1.2.4.8')
58 self.assertEqual(utils.create_subnet_mask(0), 0)
59 self.assertEqual(utils.create_subnet_mask(32), 4294967295)
60 self.assertEqual(utils.create_subnet_mask(25), 4294967168)
64 self.assertEqual(utils.format_ip_with_mask('192.168.0.1', 0),
66 self.assertEqual(utils.format_ip_with_mask('192.168.0.1', 32),
68 self.assertEqual(utils.format_ip_with_mask('192.168.0.1', 26),
70 self.assertEqual(utils.format_ip_with_mask('192.168.0.255', 26),
76 utils.open.expect_call("filename", "r").and_return(test_file)
81 self.assertEqual("abc", utils.read_one_line("filename"))
87 self.assertEqual("abc ", utils.read_one_line("filename"))
93 self.assertEqual("line 1", utils.read_one_line("filename"))
99 self.assertEqual("", utils.read_one_line("filename"))
106 utils.read_one_line("filename"))
113 utils.read_one_line("filename"))
116 class test_write_one_line(unittest.TestCase):
119 self.god.stub_function(utils, "open")
128 utils.open.expect_call("filename", "w").and_return(test_file)
129 utils.write_one_line("filename", content)
154 class test_open_write_close(unittest.TestCase):
157 self.god.stub_function(utils, "open")
167 utils.open.expect_call("filename", "w").and_return(test_file)
168 utils.open_write_close("filename", data)
175 utils.open.expect_call("filename", "wb").and_return(test_file)
176 utils.open_write_close("filename", data, is_binary=True)
181 class test_read_keyval(unittest.TestCase):
184 self.god.stub_function(utils, "open")
196 utils.open.expect_call(filename).and_return(test_file)
202 keyval = utils.read_keyval("file")
210 self.assertEqual({}, utils.read_keyval("file"))
217 utils.read_keyval("file")
224 utils.read_keyval("dir")
275 keyval = self.read_keyval("a-b=value\n")
276 self.assertEquals(keyval, {"a-b": "value"})
283 class test_write_keyval(unittest.TestCase):
286 self.god.stub_function(utils, "open")
306 utils.open.expect_call(expected_filename, "a").and_return(test_file)
309 utils.write_keyval(filename, dictionary)
311 utils.write_keyval(filename, dictionary, type_tag)
362 result = self.write_keyval_file({"a-b": "value"})
363 self.assertEquals(result, "a-b=value\n")
366 class test_is_url(unittest.TestCase):
368 self.assertTrue(utils.is_url("http://example.com"))
372 self.assertTrue(utils.is_url("ftp://ftp.example.com"))
376 self.assertFalse(utils.is_url("/home/username/file"))
380 self.assertFalse(utils.is_url("filename"))
384 self.assertFalse(utils.is_url("somedir/somesubdir/file"))
388 self.assertFalse(utils.is_url("somedir/http://path/file"))
391 class test_urlopen(unittest.TestCase):
402 expected_args += (None,) * (2 - len(expected_args))
420 retval = utils.urlopen("url", timeout=30)
429 utils.urlopen("url", timeout=30)
439 utils.urlopen("url")
445 utils.urlopen("http://url", timeout=30, data="POST data")
448 class test_urlretrieve(unittest.TestCase):
458 self.god.stub_function(utils, "urlopen")
459 self.god.stub_function(utils.shutil, "copyfileobj")
460 self.god.stub_function(utils, "open")
470 (utils.urlopen.expect_call(url, data=data, timeout=timeout)
472 utils.open.expect_call(dest, "wb").and_return(dest_file)
473 utils.shutil.copyfileobj.expect_call(src_file, dest_file)
477 utils.urlretrieve(url, dest, data=data, timeout=timeout)
481 class test_merge_trees(unittest.TestCase):
482 # a some path-handling helper functions
525 utils.merge_trees(*self.paths("empty"))
531 utils.merge_trees(*self.paths("src_only"))
538 utils.merge_trees(*self.paths("dest_only"))
548 utils.merge_trees(*self.paths("in_both"))
557 utils.merge_trees(*self.paths())
566 utils.merge_trees(*self.paths())
581 utils.merge_trees(*self.paths())
587 class test_get_relative_path(unittest.TestCase):
589 self.assertRaises(AssertionError, utils.get_relative_path, "a", "b")
592 self.assertEqual(utils.get_relative_path("/a/b/c", "/a/b"), "c")
595 self.assertEqual(utils.get_relative_path("/a/b/c/d", "/a/b"), "c/d")
598 self.assertEqual(utils.get_relative_path("/a/b", "/a/b/c/d"), "../..")
601 self.assertEqual(utils.get_relative_path("/a/c/d", "/a/b/c/d"),
605 class test_sh_escape(unittest.TestCase):
607 escaped_text = utils.sh_escape(text)
614 self.assertEqual(stdout[:-1].decode(), text)
686 class test_sh_quote_word(test_sh_escape):
693 quoted_word = utils.sh_quote_word(text)
699 class test_nested_sh_quote_word(test_sh_quote_word):
706 command = 'echo ' + utils.sh_quote_word(text)
707 nested_command = 'echo ' + utils.sh_quote_word(command)
713 class test_run(unittest.TestCase):
715 Test the utils.run() function.
717 Note: This test runs simple external commands to test the utils.run()
728 self.god.stub_function(utils.logging, 'warning')
729 self.god.stub_function(utils.logging, 'debug')
731 # Log level -> StringIO.StringIO.
739 self.god.stub_with(utils.logging_manager, 'LoggingFile', logging_file)
756 @return: 5-element list of strings corresponding to logged messages
765 utils.logging.debug.expect_any_call()
766 self.__check_result(utils.run(cmd), cmd, stdout='hello world\n')
772 utils.run(cmd, verbose=False)
773 except utils.error.CmdError as err:
779 self.__check_result(utils.run(cmd, ignore_status=True, verbose=False),
785 utils.logging.warning.expect_any_call()
787 utils.run('echo -n output && sleep 10', timeout=1, verbose=False)
788 except utils.error.CmdError as err:
797 self.__check_result(utils.run(
806 self.__check_result(utils.run(cmd, verbose=False, stdin='hi!\n'),
812 utils.run('echo output', stdout_tee=utils.TEE_TO_LOGS,
819 utils.run('echo output', stdout_tee=utils.TEE_TO_LOGS,
826 utils.run('echo output && echo error >&2', stdout_tee=utils.TEE_TO_LOGS,
827 stderr_tee=utils.TEE_TO_LOGS, stdout_level=logging.INFO,
838 utils.run('echo output && echo error >&2', stdout_tee=utils.TEE_TO_LOGS,
839 stderr_tee=utils.TEE_TO_LOGS, stdout_level=logging.INFO,
846 # implementation of shell quoting which is used by utils.run(),
849 self.__check_result(utils.run(
855 self.assertRaises(TypeError, utils.run, 'echo', args='hello')
860 utils.logging.debug.expect_any_call()
862 bg_job = utils.BgJob('echo "hello world"')
864 self.god.stub_function(utils.select, 'select')
866 utils.select.select.expect_any_call().and_raises(
868 utils.logging.warning.expect_any_call()
870 utils.select.select.expect_any_call().and_return(
872 utils.logging.warning.expect_any_call()
875 utils._wait_for_commands([bg_job], time.time(), None))
878 class test_compare_versions(unittest.TestCase):
880 self.assertEqual(utils.compare_versions('1.7', '1.10'), -1)
881 self.assertEqual(utils.compare_versions('1.222', '1.3'), 1)
882 self.assertEqual(utils.compare_versions('1.03', '1.3'), 0)
886 self.assertEqual(utils.compare_versions('1.3', '1.3.4'), -1)
887 self.assertEqual(utils.compare_versions('1.3.1', '1.3'), 1)
891 self.assertEqual(utils.compare_versions('1-2-3', '1-5-1'), -1)
892 self.assertEqual(utils.compare_versions('1-2-1', '1-1-1'), 1)
893 self.assertEqual(utils.compare_versions('1-2-4', '1-2-4'), 0)
897 self.assertEqual(utils.compare_versions('m.l.b', 'n.b.a'), -1)
898 self.assertEqual(utils.compare_versions('n.b.a', 'm.l.b'), 1)
899 self.assertEqual(utils.compare_versions('abc.e', 'abc.e'), 0)
903 self.assertEqual(utils.compare_versions('k-320.1', 'k-320.3'), -1)
904 self.assertEqual(utils.compare_versions('k-231.5', 'k-231.1'), 1)
905 self.assertEqual(utils.compare_versions('k-231.1', 'k-231.1'), 0)
907 self.assertEqual(utils.compare_versions('k.320-1', 'k.320-3'), -1)
908 self.assertEqual(utils.compare_versions('k.231-5', 'k.231-1'), 1)
909 self.assertEqual(utils.compare_versions('k.231-1', 'k.231-1'), 0)
912 class test_args_to_dict(unittest.TestCase):
914 result = utils.args_to_dict([])
919 result = utils.args_to_dict(['aBc:DeF', 'SyS=DEf', 'XY_Z:',
933 result = utils.args_to_dict(['ab-c:DeF', '--SyS=DEf', 'a*=b', 'a*b',
941 class test_get_random_port(unittest.TestCase):
951 p = utils.get_unused_port()
963 class TestClass(object):
964 """Test class.
974 """Test class function.
984 class GetFunctionArgUnittest(unittest.TestCase):
992 This is to mock instance/class object.
999 self.assertEquals(utils.get_function_arg_value(
1002 self.assertEquals(utils.get_function_arg_value(
1005 KeyError, utils.get_function_arg_value,
1006 func, 'arg3', args[:-1], {})
1022 """Test class function.
1033 class IsInSameSubnetUnittest(unittest.TestCase):
1038 self.assertTrue(utils.is_in_same_subnet('192.168.0.0', '192.168.1.2',
1040 self.assertFalse(utils.is_in_same_subnet('192.168.0.0', '192.168.1.2',
1042 self.assertTrue(utils.is_in_same_subnet('192.168.0.0', '192.168.0.255',
1044 self.assertFalse(utils.is_in_same_subnet('191.168.0.0', '192.168.0.0',
1048 class GetWirelessSsidUnittest(unittest.TestCase):
1059 god.stub_function_to_return(utils.CONFIG, 'get_config_value',
1061 god.stub_function_to_return(utils.CONFIG, 'get_config_value_regex',
1065 self.assertEqual(self.SSID_1, utils.get_wireless_ssid('1.2.3.100'))
1066 self.assertEqual(self.SSID_2, utils.get_wireless_ssid('4.3.2.100'))
1067 self.assertEqual(self.SSID_3, utils.get_wireless_ssid('4.3.2.111'))
1069 utils.get_wireless_ssid('100.0.0.100'))
1072 class LaunchControlBuildParseUnittest(unittest.TestCase):
1080 ('shamu', 'userdebug'): 'shamu-userdebug',
1081 ('shamu', 'eng'): 'shamu-eng',
1082 ('shamu-board', 'eng'): 'shamu-board-eng',
1086 self.assertEqual(result, utils.parse_launch_control_target(target))
1089 class GetOffloaderUriTest(unittest.TestCase):
1101 self.god.mock_up(utils.CONFIG, 'CONFIG')
1102 self.god.stub_function_to_return(utils, 'is_moblab', False)
1103 self.assertEqual(utils.DEFAULT_OFFLOAD_GSURI,
1104 utils.get_offload_gsuri())
1109 self.god.mock_up(utils.CONFIG, 'CONFIG')
1110 self.god.stub_function_to_return(utils, 'is_moblab', True)
1111 utils.CONFIG.get_config_value.expect_call(
1114 self.god.stub_function_to_return(utils,
1116 self.god.stub_function_to_return(utils, 'get_moblab_id', 'test_id')
1119 cached_gsuri = utils.DEFAULT_OFFLOAD_GSURI
1120 utils.DEFAULT_OFFLOAD_GSURI = None
1121 gsuri = utils.get_offload_gsuri()
1122 utils.DEFAULT_OFFLOAD_GSURI = cached_gsuri
1129 self.god.mock_up(utils.CONFIG, 'CONFIG')
1130 self.god.stub_function_to_return(utils, 'is_moblab', True)
1131 self.god.stub_function_to_return(utils,
1133 self.god.stub_function_to_return(utils, 'get_moblab_id', 'test_id')
1135 utils.DEFAULT_OFFLOAD_GSURI, 'test_serial_number', 'test_id')
1136 self.assertEqual(gsuri, utils.get_offload_gsuri())
1142 class MockMetricsTest(unittest.TestCase):
1143 """Test metrics mock class can handle various metrics calls."""
1146 """Test the mock class can create an instance and call any method.
1153 """Test the mock class can handle context class.
1163 """Test the mock class can handle decorator.
1165 class TestClass(object):
1181 """Test the mock class can handle set item call.
1187 class test_background_sample(unittest.TestCase):
1201 t = utils.background_sample_until_condition(
1221 t = utils.background_sample_until_condition(
1235 class FakeTime(object):
1251 class TimeModuleMockTestCase(unittest.TestCase):
1252 """Mocks up utils.time with a FakeTime.
1262 'autotest_lib.client.common_lib.utils.time')
1275 """Creates a function that returns False for the first count-th calls.
1277 @return a function returns False for the first count-th calls and True
1280 counter = itertools.count(count, -1)
1284 class test_poll_for_condition(TimeModuleMockTestCase):
1291 self.assertTrue(utils.poll_for_condition(lambda: True))
1297 self.assertEqual(1, utils.poll_for_condition(lambda: 1))
1300 utils.poll_for_condition(lambda: 'something'))
1309 with self.assertRaises(utils.TimeoutError):
1310 utils.poll_for_condition(lambda: False, timeout=3, sleep_interval=1)
1320 with self.assertRaises(utils.TimeoutError):
1321 utils.poll_for_condition(lambda: 0, timeout=3, sleep_interval=1)
1324 with self.assertRaises(utils.TimeoutError):
1325 utils.poll_for_condition(lambda: None, timeout=3, sleep_interval=1)
1334 utils.poll_for_condition(lambda: False,
1346 utils.poll_for_condition(always_raise,
1357 self.assertTrue(utils.poll_for_condition(fail_n_times(2), timeout=3,
1365 utils.TimeoutError,
1367 utils.poll_for_condition(fail_n_times(4), timeout=3,
1372 class test_poll_for_condition_ex(TimeModuleMockTestCase):
1379 self.assertTrue(utils.poll_for_condition_ex(lambda: True))
1385 self.assertEqual(1, utils.poll_for_condition_ex(lambda: 1))
1388 utils.poll_for_condition_ex(lambda: 'something'))
1397 utils.TimeoutError,
1399 utils.poll_for_condition_ex(lambda: False, timeout=3,
1410 utils.TimeoutError,
1412 utils.poll_for_condition_ex(lambda: 0, timeout=3,
1417 utils.TimeoutError,
1419 utils.poll_for_condition_ex(lambda: None, timeout=3,
1429 utils.TimeoutError,
1431 utils.poll_for_condition_ex(lambda: False,
1443 utils.TimeoutError,
1445 utils.poll_for_condition_ex(always_raise, timeout=3,
1453 self.assertTrue(utils.poll_for_condition_ex(fail_n_times(2), timeout=3,
1461 utils.TimeoutError,
1463 utils.poll_for_condition_ex(fail_n_times(3), timeout=3,
1468 class test_timer(TimeModuleMockTestCase):
1477 timer = utils.Timer(0)
1488 timer = utils.Timer(timeout)
1500 class test_timeout_error(unittest.TestCase):
1509 e = utils.TimeoutError()
1517 e = utils.TimeoutError(message='Waiting for condition')
1522 e = utils.TimeoutError('Waiting for condition')
1531 e = utils.TimeoutError(reason='illegal input')
1540 e = utils.TimeoutError(message='Waiting for condition',
1547 e = utils.TimeoutError('Waiting for condition', reason='illegal input')
1556 e = utils.TimeoutError(message='Waiting for condition',
1565 e = utils.TimeoutError('Waiting for condition',