Revert "Add a wrapper class PartitionBuildProp"

Revert submission 1297095

Bug: 156131275
Reason for revert: Broken build
Reverted Changes:
I2fe7e93a2:Add a wrapper class PartitionBuildProp
Iac093a40d:Calculate the runtime fingerprint prefixes from bu...

Change-Id: Ie846d23b9f5c3325d021236725826512be7a3c78
diff --git a/tools/releasetools/test_common.py b/tools/releasetools/test_common.py
index c0c2d3f..665eb51 100644
--- a/tools/releasetools/test_common.py
+++ b/tools/releasetools/test_common.py
@@ -48,124 +48,109 @@
 class BuildInfoTest(test_utils.ReleaseToolsTestCase):
 
   TEST_INFO_DICT = {
-      'build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.product.device': 'product-device',
-              'ro.product.name': 'product-name',
-              'ro.build.fingerprint': 'build-fingerprint',
-              'ro.build.foo': 'build-foo'}
-      ),
-      'system.build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.product.system.brand': 'product-brand',
-              'ro.product.system.name': 'product-name',
-              'ro.product.system.device': 'product-device',
-              'ro.system.build.version.release': 'version-release',
-              'ro.system.build.id': 'build-id',
-              'ro.system.build.version.incremental': 'version-incremental',
-              'ro.system.build.type': 'build-type',
-              'ro.system.build.tags': 'build-tags',
-              'ro.system.build.foo': 'build-foo'}
-      ),
-      'vendor.build.prop': common.PartitionBuildProps.FromDictionary(
-          'vendor', {
-              'ro.product.vendor.brand': 'vendor-product-brand',
-              'ro.product.vendor.name': 'vendor-product-name',
-              'ro.product.vendor.device': 'vendor-product-device',
-              'ro.vendor.build.version.release': 'vendor-version-release',
-              'ro.vendor.build.id': 'vendor-build-id',
-              'ro.vendor.build.version.incremental':
-              'vendor-version-incremental',
-              'ro.vendor.build.type': 'vendor-build-type',
-              'ro.vendor.build.tags': 'vendor-build-tags'}
-      ),
-      'property1': 'value1',
-      'property2': 4096,
+      'build.prop' : {
+          'ro.product.device' : 'product-device',
+          'ro.product.name' : 'product-name',
+          'ro.build.fingerprint' : 'build-fingerprint',
+          'ro.build.foo' : 'build-foo',
+      },
+      'system.build.prop' : {
+          'ro.product.system.brand' : 'product-brand',
+          'ro.product.system.name' : 'product-name',
+          'ro.product.system.device' : 'product-device',
+          'ro.system.build.version.release' : 'version-release',
+          'ro.system.build.id' : 'build-id',
+          'ro.system.build.version.incremental' : 'version-incremental',
+          'ro.system.build.type' : 'build-type',
+          'ro.system.build.tags' : 'build-tags',
+          'ro.system.build.foo' : 'build-foo',
+      },
+      'vendor.build.prop' : {
+          'ro.product.vendor.brand' : 'vendor-product-brand',
+          'ro.product.vendor.name' : 'vendor-product-name',
+          'ro.product.vendor.device' : 'vendor-product-device',
+          'ro.vendor.build.version.release' : 'vendor-version-release',
+          'ro.vendor.build.id' : 'vendor-build-id',
+          'ro.vendor.build.version.incremental' : 'vendor-version-incremental',
+          'ro.vendor.build.type' : 'vendor-build-type',
+          'ro.vendor.build.tags' : 'vendor-build-tags',
+      },
+      'property1' : 'value1',
+      'property2' : 4096,
   }
 
   TEST_INFO_DICT_USES_OEM_PROPS = {
-      'build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.product.name': 'product-name',
-              'ro.build.thumbprint': 'build-thumbprint',
-              'ro.build.bar': 'build-bar'}
-      ),
-      'vendor.build.prop': common.PartitionBuildProps.FromDictionary(
-          'vendor', {
-              'ro.vendor.build.fingerprint': 'vendor-build-fingerprint'}
-      ),
-      'property1': 'value1',
-      'property2': 4096,
-      'oem_fingerprint_properties': 'ro.product.device ro.product.brand',
+      'build.prop' : {
+          'ro.product.name' : 'product-name',
+          'ro.build.thumbprint' : 'build-thumbprint',
+          'ro.build.bar' : 'build-bar',
+      },
+      'vendor.build.prop' : {
+          'ro.vendor.build.fingerprint' : 'vendor-build-fingerprint',
+      },
+      'property1' : 'value1',
+      'property2' : 4096,
+      'oem_fingerprint_properties' : 'ro.product.device ro.product.brand',
   }
 
   TEST_OEM_DICTS = [
       {
-          'ro.product.brand': 'brand1',
-          'ro.product.device': 'device1',
+          'ro.product.brand' : 'brand1',
+          'ro.product.device' : 'device1',
       },
       {
-          'ro.product.brand': 'brand2',
-          'ro.product.device': 'device2',
+          'ro.product.brand' : 'brand2',
+          'ro.product.device' : 'device2',
       },
       {
-          'ro.product.brand': 'brand3',
-          'ro.product.device': 'device3',
+          'ro.product.brand' : 'brand3',
+          'ro.product.device' : 'device3',
       },
   ]
 
   TEST_INFO_DICT_PROPERTY_SOURCE_ORDER = {
-      'build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.build.fingerprint': 'build-fingerprint',
-              'ro.product.property_source_order':
-                  'product,odm,vendor,system_ext,system'}
-      ),
-      'system.build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.product.system.device': 'system-product-device'}
-      ),
-      'vendor.build.prop': common.PartitionBuildProps.FromDictionary(
-          'vendor', {
-              'ro.product.vendor.device': 'vendor-product-device'}
-      ),
+      'build.prop' : {
+          'ro.build.fingerprint' : 'build-fingerprint',
+          'ro.product.property_source_order' :
+              'product,odm,vendor,system_ext,system',
+      },
+      'system.build.prop' : {
+          'ro.product.system.device' : 'system-product-device',
+      },
+      'vendor.build.prop' : {
+          'ro.product.vendor.device' : 'vendor-product-device',
+      },
   }
 
   TEST_INFO_DICT_PROPERTY_SOURCE_ORDER_ANDROID_10 = {
-      'build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.build.fingerprint': 'build-fingerprint',
-              'ro.product.property_source_order':
-                  'product,product_services,odm,vendor,system',
-              'ro.build.version.release': '10',
-              'ro.build.version.codename': 'REL'}
-      ),
-      'system.build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.product.system.device': 'system-product-device'}
-      ),
-      'vendor.build.prop': common.PartitionBuildProps.FromDictionary(
-          'vendor', {
-              'ro.product.vendor.device': 'vendor-product-device'}
-      ),
+      'build.prop' : {
+          'ro.build.fingerprint' : 'build-fingerprint',
+          'ro.product.property_source_order' :
+              'product,product_services,odm,vendor,system',
+          'ro.build.version.release' : '10',
+          'ro.build.version.codename' : 'REL',
+      },
+      'system.build.prop' : {
+          'ro.product.system.device' : 'system-product-device',
+      },
+      'vendor.build.prop' : {
+          'ro.product.vendor.device' : 'vendor-product-device',
+      },
   }
 
   TEST_INFO_DICT_PROPERTY_SOURCE_ORDER_ANDROID_9 = {
-      'build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.product.device': 'product-device',
-              'ro.build.fingerprint': 'build-fingerprint',
-              'ro.build.version.release': '9',
-              'ro.build.version.codename': 'REL'}
-      ),
-      'system.build.prop': common.PartitionBuildProps.FromDictionary(
-          'system', {
-              'ro.product.system.device': 'system-product-device'}
-      ),
-      'vendor.build.prop': common.PartitionBuildProps.FromDictionary(
-          'vendor', {
-              'ro.product.vendor.device': 'vendor-product-device'}
-      ),
+      'build.prop' : {
+          'ro.product.device' : 'product-device',
+          'ro.build.fingerprint' : 'build-fingerprint',
+          'ro.build.version.release' : '9',
+          'ro.build.version.codename' : 'REL',
+      },
+      'system.build.prop' : {
+          'ro.product.system.device' : 'system-product-device',
+      },
+      'vendor.build.prop' : {
+          'ro.product.vendor.device' : 'vendor-product-device',
+      },
   }
 
   def test_init(self):
@@ -193,27 +178,25 @@
 
   def test_init_badFingerprint(self):
     info_dict = copy.deepcopy(self.TEST_INFO_DICT)
-    info_dict['build.prop'].build_props[
-        'ro.build.fingerprint'] = 'bad fingerprint'
+    info_dict['build.prop']['ro.build.fingerprint'] = 'bad fingerprint'
     self.assertRaises(ValueError, common.BuildInfo, info_dict, None)
 
-    info_dict['build.prop'].build_props[
-        'ro.build.fingerprint'] = 'bad\x80fingerprint'
+    info_dict['build.prop']['ro.build.fingerprint'] = 'bad\x80fingerprint'
     self.assertRaises(ValueError, common.BuildInfo, info_dict, None)
 
   def test___getitem__(self):
     target_info = common.BuildInfo(self.TEST_INFO_DICT, None)
     self.assertEqual('value1', target_info['property1'])
     self.assertEqual(4096, target_info['property2'])
-    self.assertEqual('build-foo',
-                     target_info['build.prop'].GetProp('ro.build.foo'))
+    self.assertEqual('build-foo', target_info['build.prop']['ro.build.foo'])
 
   def test___getitem__with_oem_props(self):
     target_info = common.BuildInfo(self.TEST_INFO_DICT_USES_OEM_PROPS,
                                    self.TEST_OEM_DICTS)
     self.assertEqual('value1', target_info['property1'])
     self.assertEqual(4096, target_info['property2'])
-    self.assertIsNone(target_info['build.prop'].GetProp('ro.build.foo'))
+    self.assertRaises(KeyError,
+                      lambda: target_info['build.prop']['ro.build.foo'])
 
   def test___setitem__(self):
     target_info = common.BuildInfo(copy.deepcopy(self.TEST_INFO_DICT), None)
@@ -221,11 +204,9 @@
     target_info['property1'] = 'value2'
     self.assertEqual('value2', target_info['property1'])
 
-    self.assertEqual('build-foo',
-                     target_info['build.prop'].GetProp('ro.build.foo'))
-    target_info['build.prop'].build_props['ro.build.foo'] = 'build-bar'
-    self.assertEqual('build-bar',
-                     target_info['build.prop'].GetProp('ro.build.foo'))
+    self.assertEqual('build-foo', target_info['build.prop']['ro.build.foo'])
+    target_info['build.prop']['ro.build.foo'] = 'build-bar'
+    self.assertEqual('build-bar', target_info['build.prop']['ro.build.foo'])
 
   def test_get(self):
     target_info = common.BuildInfo(self.TEST_INFO_DICT, None)
@@ -233,8 +214,7 @@
     self.assertEqual(4096, target_info.get('property2'))
     self.assertEqual(4096, target_info.get('property2', 1024))
     self.assertEqual(1024, target_info.get('property-nonexistent', 1024))
-    self.assertEqual('build-foo',
-                     target_info.get('build.prop').GetProp('ro.build.foo'))
+    self.assertEqual('build-foo', target_info.get('build.prop')['ro.build.foo'])
 
   def test_get_with_oem_props(self):
     target_info = common.BuildInfo(self.TEST_INFO_DICT_USES_OEM_PROPS,
@@ -243,7 +223,9 @@
     self.assertEqual(4096, target_info.get('property2'))
     self.assertEqual(4096, target_info.get('property2', 1024))
     self.assertEqual(1024, target_info.get('property-nonexistent', 1024))
-    self.assertIsNone(target_info.get('build.prop').GetProp('ro.build.foo'))
+    self.assertIsNone(target_info.get('build.prop').get('ro.build.foo'))
+    self.assertRaises(KeyError,
+                      lambda: target_info.get('build.prop')['ro.build.foo'])
 
   def test_items(self):
     target_info = common.BuildInfo(self.TEST_INFO_DICT, None)
@@ -280,8 +262,7 @@
 
   def test_GetPartitionFingerprint_uses_fingerprint_prop_if_available(self):
     info_dict = copy.deepcopy(self.TEST_INFO_DICT)
-    info_dict['vendor.build.prop'].build_props[
-        'ro.vendor.build.fingerprint'] = 'vendor:fingerprint'
+    info_dict['vendor.build.prop']['ro.vendor.build.fingerprint'] = 'vendor:fingerprint'
     target_info = common.BuildInfo(info_dict, None)
     self.assertEqual(
         target_info.GetPartitionFingerprint('vendor'),
@@ -322,15 +303,14 @@
 
   def test_ResolveRoProductProperty_FromSystem(self):
     info_dict = copy.deepcopy(self.TEST_INFO_DICT_PROPERTY_SOURCE_ORDER)
-    del info_dict['vendor.build.prop'].build_props['ro.product.vendor.device']
+    del info_dict['vendor.build.prop']['ro.product.vendor.device']
     info = common.BuildInfo(info_dict, None)
     self.assertEqual('system-product-device',
                      info.GetBuildProp('ro.product.device'))
 
   def test_ResolveRoProductProperty_InvalidPropertySearchOrder(self):
     info_dict = copy.deepcopy(self.TEST_INFO_DICT_PROPERTY_SOURCE_ORDER)
-    info_dict['build.prop'].build_props[
-        'ro.product.property_source_order'] = 'bad-source'
+    info_dict['build.prop']['ro.product.property_source_order'] = 'bad-source'
     with self.assertRaisesRegexp(common.ExternalError,
         'Invalid ro.product.property_source_order'):
       info = common.BuildInfo(info_dict, None)
@@ -1533,14 +1513,12 @@
     common.OPTIONS.info_dict = {
         'ab_update': 'true',
         'avb_avbtool': 'avbtool',
-        'build.prop': common.PartitionBuildProps.FromDictionary(
-            'system', {
-                'ro.build.version.incremental': '6285659',
-                'ro.product.device': 'coral',
-                'ro.build.fingerprint':
-                'google/coral/coral:R/RP1A.200311.002/'
-                '6285659:userdebug/dev-keys'}
-        ),
+        'build.prop': {
+            'ro.build.version.incremental': '6285659',
+            'ro.product.device': 'coral',
+            'ro.build.fingerprint': 'google/coral/coral:R/RP1A.200311.002/'
+                                    '6285659:userdebug/dev-keys'
+        }
     }
     common.OPTIONS.aftl_tool_path = 'aftltool'
     common.OPTIONS.aftl_server = 'log.endpoints.aftl-dev.cloud.goog:9000'
@@ -1573,14 +1551,12 @@
     common.OPTIONS.info_dict = {
         'ab_update': 'true',
         'avb_avbtool': 'avbtool',
-        'build.prop': common.PartitionBuildProps.FromDictionary(
-            'system', {
-                'ro.build.version.incremental': '6285659',
-                'ro.product.device': 'coral',
-                'ro.build.fingerprint':
-                'google/coral/coral:R/RP1A.200311.002/'
-                '6285659:userdebug/dev-keys'}
-        )
+        'build.prop': {
+            'ro.build.version.incremental': '6285659',
+            'ro.product.device': 'coral',
+            'ro.build.fingerprint': 'google/coral/coral:R/RP1A.200311.002/'
+                                    '6285659:userdebug/dev-keys'
+        }
     }
     common.OPTIONS.aftl_tool_path = "aftltool"
     common.OPTIONS.aftl_server = "log.endpoints.aftl-dev.cloud.goog:9000"
@@ -1895,47 +1871,3 @@
 
     lines = self.get_op_list(self.output_path)
     self.assertEqual(lines, ["remove foo"])
-
-
-class PartitionBuildPropsTest(test_utils.ReleaseToolsTestCase):
-  def setUp(self):
-    self.build_prop = [
-        'ro.odm.build.date.utc=1578430045',
-        'ro.odm.build.fingerprint='
-        'google/coral/coral:10/RP1A.200325.001/6337676:user/dev-keys',
-        'ro.product.odm.device=coral',
-        'import /odm/etc/build_${ro.boot.product.device_name}.prop',
-    ]
-
-  @staticmethod
-  def _BuildZipFile(entries):
-    input_file = common.MakeTempFile(prefix='target_files-', suffix='.zip')
-    with zipfile.ZipFile(input_file, 'w') as input_zip:
-      for name, content in entries.items():
-        input_zip.writestr(name, content)
-
-    return input_file
-
-  def test_parseBuildProps_noImportStatement(self):
-    build_prop = [
-      'ro.odm.build.date.utc=1578430045',
-      'ro.odm.build.fingerprint='
-      'google/coral/coral:10/RP1A.200325.001/6337676:user/dev-keys',
-      'ro.product.odm.device=coral',
-    ]
-    input_file = self._BuildZipFile({
-      'ODM/etc/build.prop': '\n'.join(build_prop),
-    })
-
-    with zipfile.ZipFile(input_file, 'r') as input_zip:
-      partition_props = common.PartitionBuildProps.FromInputFile(
-          input_zip, 'odm')
-
-    self.assertEqual({
-      'ro.odm.build.date.utc': '1578430045',
-      'ro.odm.build.fingerprint':
-      'google/coral/coral:10/RP1A.200325.001/6337676:user/dev-keys',
-      'ro.product.odm.device': 'coral',
-    }, partition_props.build_props)
-
-    self.assertEqual({}, partition_props.prop_overrides)