Override build model value when linking custom reports to CTS builds.

bug: 64458205
Test: unit tests.
Merged-In: I86ed01ae85475a61ed9f3b0245bcc8453c2f039c
Change-Id: I86ed01ae85475a61ed9f3b0245bcc8453c2f039c
(cherry picked from commit bb3ae26496791df2635b18974e02adda5fd0be0e)
diff --git a/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/result/ResultReporter.java b/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/result/ResultReporter.java
index 4228b3a..7f1a5fa 100644
--- a/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/result/ResultReporter.java
+++ b/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/result/ResultReporter.java
@@ -84,13 +84,14 @@
     private static final String CTS_PREFIX = "cts:";
     private static final String BUILD_INFO = CTS_PREFIX + "build_";
 
-    public static final String BUILD_VERSION_RELEASE = "build_version_release";
-    public static final String BUILD_ID = "build_id";
-    public static final String BUILD_PRODUCT = "build_product";
-    public static final String BUILD_DEVICE = "build_device";
-    public static final String BUILD_MANUFACTURER = "build_manufacturer";
     public static final String BUILD_BRAND = "build_brand";
+    public static final String BUILD_DEVICE = "build_device";
     public static final String BUILD_FINGERPRINT = "build_fingerprint";
+    public static final String BUILD_ID = "build_id";
+    public static final String BUILD_MANUFACTURER = "build_manufacturer";
+    public static final String BUILD_MODEL = "build_model";
+    public static final String BUILD_PRODUCT = "build_product";
+    public static final String BUILD_VERSION_RELEASE = "build_version_release";
 
     private static final List<String> NOT_RETRY_FILES = Arrays.asList(
             ChecksumReporter.NAME,
@@ -682,7 +683,7 @@
      * build fingerprint being certified.
      */
     protected void addDeviceBuildInfoToResult(String buildFingerprintOverride,
-            String manufactureOverride) {
+            String manufactureOverride, String modelOverride) {
 
         Map<String, String> buildProperties = mapBuildInfo();
 
@@ -702,6 +703,7 @@
         buildProperties.put(BUILD_VERSION_RELEASE, versionOverride);
         buildProperties.put(BUILD_FINGERPRINT, buildFingerprintOverride);
         buildProperties.put(BUILD_MANUFACTURER, manufactureOverride);
+        buildProperties.put(BUILD_MODEL, modelOverride);
 
         // Add modified values to results.
         addBuildInfoToResult(buildProperties, mResult);
diff --git a/common/host-side/tradefed/tests/src/com/android/compatibility/common/tradefed/result/ResultReporterBuildInfoTest.java b/common/host-side/tradefed/tests/src/com/android/compatibility/common/tradefed/result/ResultReporterBuildInfoTest.java
index 21154ff..6e62c36 100644
--- a/common/host-side/tradefed/tests/src/com/android/compatibility/common/tradefed/result/ResultReporterBuildInfoTest.java
+++ b/common/host-side/tradefed/tests/src/com/android/compatibility/common/tradefed/result/ResultReporterBuildInfoTest.java
@@ -36,10 +36,11 @@
         String device = "gDevice";
         String version = "gVersion";
         String buildId = "123";
+        String model = "gModel";
         String fingerprint = brand + "/" + product + "/" + device + ":" +
                 version + "/" + buildId + "/userdebug-keys";
 
-        IInvocationResult result = tester.testBuildInfoOverride(fingerprint, manufacture);
+        IInvocationResult result = tester.testBuildInfoOverride(fingerprint, manufacture, model);
         Map<String, String> invocationInfo = result.getInvocationInfo();
         assertEquals(invocationInfo.get(ResultReporter.BUILD_ID), buildId);
         assertEquals(invocationInfo.get(ResultReporter.BUILD_BRAND), brand);
@@ -48,6 +49,7 @@
         assertEquals(invocationInfo.get(ResultReporter.BUILD_VERSION_RELEASE), version);
         assertEquals(invocationInfo.get(ResultReporter.BUILD_FINGERPRINT), fingerprint);
         assertEquals(invocationInfo.get(ResultReporter.BUILD_MANUFACTURER), manufacture);
+        assertEquals(invocationInfo.get(ResultReporter.BUILD_MODEL), model);
     }
 
     public static class ResultReporterBuildInfoTester extends ResultReporter {
@@ -57,8 +59,9 @@
         }
 
         public IInvocationResult testBuildInfoOverride(String buildFingerprintOverride,
-                String manufactureOverride) {
-            addDeviceBuildInfoToResult(buildFingerprintOverride, manufactureOverride);
+                String manufactureOverride, String modelOverride) {
+            addDeviceBuildInfoToResult(
+                    buildFingerprintOverride, manufactureOverride, modelOverride);
             return mResult;
         }
 
@@ -72,6 +75,7 @@
             buildProperties.put(BUILD_VERSION_RELEASE, BUILD_VERSION_RELEASE);
             buildProperties.put(BUILD_FINGERPRINT, BUILD_FINGERPRINT);
             buildProperties.put(BUILD_MANUFACTURER, BUILD_MANUFACTURER);
+            buildProperties.put(BUILD_MODEL, BUILD_MODEL);
             return buildProperties;
         }
     }