diff options
author | Tao Bao <tbao@google.com> | 2019-10-07 20:00:34 -0700 |
---|---|---|
committer | Tao Bao <tbao@google.com> | 2019-10-07 20:00:34 -0700 |
commit | e1148041501d733982adf51777748c8827f1bb7c (patch) | |
tree | dcd27d0346613e8b13e2762cd432bd05fcf23d8c | |
parent | 7e49064030c7087e80f6addad61546714cab6a98 (diff) | |
download | build-e1148041501d733982adf51777748c8827f1bb7c.tar.gz |
releasetools: Move MockScriptWriter into test_utils.
Bug: 134525174
Test: TreeHugger
Test: lunch a target; atest --host releasetools_test releasetools_py3_test
Change-Id: I6d30f4d153d59d65227275e1d3285e30dfafd90e
-rw-r--r-- | tools/releasetools/test_common.py | 20 | ||||
-rw-r--r-- | tools/releasetools/test_ota_from_target_files.py | 57 | ||||
-rwxr-xr-x | tools/releasetools/test_utils.py | 41 |
3 files changed, 56 insertions, 62 deletions
diff --git a/tools/releasetools/test_common.py b/tools/releasetools/test_common.py index cc59cba11b..c1e9d7a1f4 100644 --- a/tools/releasetools/test_common.py +++ b/tools/releasetools/test_common.py @@ -1232,24 +1232,6 @@ class InstallRecoveryScriptFormatTest(test_utils.ReleaseToolsTestCase): self._info) -class MockScriptWriter(object): - """A class that mocks edify_generator.EdifyGenerator.""" - - def __init__(self, enable_comments=False): - self.lines = [] - self.enable_comments = enable_comments - - def Comment(self, comment): - if self.enable_comments: - self.lines.append('# {}'.format(comment)) - - def AppendExtra(self, extra): - self.lines.append(extra) - - def __str__(self): - return '\n'.join(self.lines) - - class MockBlockDifference(object): def __init__(self, partition, tgt, src=None): @@ -1287,7 +1269,7 @@ class DynamicPartitionsDifferenceTest(test_utils.ReleaseToolsTestCase): if not line.startswith(b'#')] def setUp(self): - self.script = MockScriptWriter() + self.script = test_utils.MockScriptWriter() self.output_path = common.MakeTempFile(suffix='.zip') def test_full(self): diff --git a/tools/releasetools/test_ota_from_target_files.py b/tools/releasetools/test_ota_from_target_files.py index f7d59daf85..dd42822bbc 100644 --- a/tools/releasetools/test_ota_from_target_files.py +++ b/tools/releasetools/test_ota_from_target_files.py @@ -74,35 +74,6 @@ def construct_target_files(secondary=False): return target_files -class MockScriptWriter(object): - """A class that mocks edify_generator.EdifyGenerator. - - It simply pushes the incoming arguments onto script stack, which is to assert - the calls to EdifyGenerator functions. - """ - - def __init__(self): - self.script = [] - - def Mount(self, *args): - self.script.append(('Mount',) + args) - - def AssertDevice(self, *args): - self.script.append(('AssertDevice',) + args) - - def AssertOemProperty(self, *args): - self.script.append(('AssertOemProperty',) + args) - - def AssertFingerprintOrThumbprint(self, *args): - self.script.append(('AssertFingerprintOrThumbprint',) + args) - - def AssertSomeFingerprint(self, *args): - self.script.append(('AssertSomeFingerprint',) + args) - - def AssertSomeThumbprint(self, *args): - self.script.append(('AssertSomeThumbprint',) + args) - - class BuildInfoTest(test_utils.ReleaseToolsTestCase): TEST_INFO_DICT = { @@ -281,20 +252,20 @@ class BuildInfoTest(test_utils.ReleaseToolsTestCase): def test_WriteMountOemScript(self): target_info = BuildInfo(self.TEST_INFO_DICT_USES_OEM_PROPS, self.TEST_OEM_DICTS) - script_writer = MockScriptWriter() + script_writer = test_utils.MockScriptWriter() target_info.WriteMountOemScript(script_writer) - self.assertEqual([('Mount', '/oem', None)], script_writer.script) + self.assertEqual([('Mount', '/oem', None)], script_writer.lines) def test_WriteDeviceAssertions(self): target_info = BuildInfo(self.TEST_INFO_DICT, None) - script_writer = MockScriptWriter() + script_writer = test_utils.MockScriptWriter() target_info.WriteDeviceAssertions(script_writer, False) - self.assertEqual([('AssertDevice', 'product-device')], script_writer.script) + self.assertEqual([('AssertDevice', 'product-device')], script_writer.lines) def test_WriteDeviceAssertions_with_oem_props(self): target_info = BuildInfo(self.TEST_INFO_DICT_USES_OEM_PROPS, self.TEST_OEM_DICTS) - script_writer = MockScriptWriter() + script_writer = test_utils.MockScriptWriter() target_info.WriteDeviceAssertions(script_writer, False) self.assertEqual( [ @@ -303,7 +274,7 @@ class BuildInfoTest(test_utils.ReleaseToolsTestCase): ('AssertOemProperty', 'ro.product.brand', ['brand1', 'brand2', 'brand3'], False), ], - script_writer.script) + script_writer.lines) def test_WriteFingerprintAssertion_without_oem_props(self): target_info = BuildInfo(self.TEST_INFO_DICT, None) @@ -312,36 +283,36 @@ class BuildInfoTest(test_utils.ReleaseToolsTestCase): 'source-build-fingerprint') source_info = BuildInfo(source_info_dict, None) - script_writer = MockScriptWriter() + script_writer = test_utils.MockScriptWriter() WriteFingerprintAssertion(script_writer, target_info, source_info) self.assertEqual( [('AssertSomeFingerprint', 'source-build-fingerprint', 'build-fingerprint')], - script_writer.script) + script_writer.lines) def test_WriteFingerprintAssertion_with_source_oem_props(self): target_info = BuildInfo(self.TEST_INFO_DICT, None) source_info = BuildInfo(self.TEST_INFO_DICT_USES_OEM_PROPS, self.TEST_OEM_DICTS) - script_writer = MockScriptWriter() + script_writer = test_utils.MockScriptWriter() WriteFingerprintAssertion(script_writer, target_info, source_info) self.assertEqual( [('AssertFingerprintOrThumbprint', 'build-fingerprint', 'build-thumbprint')], - script_writer.script) + script_writer.lines) def test_WriteFingerprintAssertion_with_target_oem_props(self): target_info = BuildInfo(self.TEST_INFO_DICT_USES_OEM_PROPS, self.TEST_OEM_DICTS) source_info = BuildInfo(self.TEST_INFO_DICT, None) - script_writer = MockScriptWriter() + script_writer = test_utils.MockScriptWriter() WriteFingerprintAssertion(script_writer, target_info, source_info) self.assertEqual( [('AssertFingerprintOrThumbprint', 'build-fingerprint', 'build-thumbprint')], - script_writer.script) + script_writer.lines) def test_WriteFingerprintAssertion_with_both_oem_props(self): target_info = BuildInfo(self.TEST_INFO_DICT_USES_OEM_PROPS, @@ -351,12 +322,12 @@ class BuildInfoTest(test_utils.ReleaseToolsTestCase): 'source-build-thumbprint') source_info = BuildInfo(source_info_dict, self.TEST_OEM_DICTS) - script_writer = MockScriptWriter() + script_writer = test_utils.MockScriptWriter() WriteFingerprintAssertion(script_writer, target_info, source_info) self.assertEqual( [('AssertSomeThumbprint', 'build-thumbprint', 'source-build-thumbprint')], - script_writer.script) + script_writer.lines) class LoadOemDictsTest(test_utils.ReleaseToolsTestCase): diff --git a/tools/releasetools/test_utils.py b/tools/releasetools/test_utils.py index 244567166d..e99975765b 100755 --- a/tools/releasetools/test_utils.py +++ b/tools/releasetools/test_utils.py @@ -145,6 +145,47 @@ def construct_sparse_image(chunks): return sparse_image +class MockScriptWriter(object): + """A class that mocks edify_generator.EdifyGenerator. + + It simply pushes the incoming arguments onto script stack, which is to assert + the calls to EdifyGenerator functions. + """ + + def __init__(self, enable_comments=False): + self.lines = [] + self.enable_comments = enable_comments + + def Mount(self, *args): + self.lines.append(('Mount',) + args) + + def AssertDevice(self, *args): + self.lines.append(('AssertDevice',) + args) + + def AssertOemProperty(self, *args): + self.lines.append(('AssertOemProperty',) + args) + + def AssertFingerprintOrThumbprint(self, *args): + self.lines.append(('AssertFingerprintOrThumbprint',) + args) + + def AssertSomeFingerprint(self, *args): + self.lines.append(('AssertSomeFingerprint',) + args) + + def AssertSomeThumbprint(self, *args): + self.lines.append(('AssertSomeThumbprint',) + args) + + def Comment(self, comment): + if not self.enable_comments: + return + self.lines.append('# {}'.format(comment)) + + def AppendExtra(self, extra): + self.lines.append(extra) + + def __str__(self): + return '\n'.join(self.lines) + + class ReleaseToolsTestCase(unittest.TestCase): """A common base class for all the releasetools unittests.""" |