Support data properties in java_test and android_test

Files in the data property will be passed to
LOCAL_COMPATIBILITY_SUPPORT_FILES in Make.

Test: m checkbuild
Change-Id: Ifc074317f957aba8f55daa30abc5b9737d1eceac
diff --git a/java/androidmk.go b/java/androidmk.go
index 4eae81e..384d7e8 100644
--- a/java/androidmk.go
+++ b/java/androidmk.go
@@ -114,6 +114,8 @@
 		}
 	})
 
+	androidMkWriteTestData(j.data, &data)
+
 	return data
 }
 
@@ -255,6 +257,7 @@
 			fmt.Fprintln(w, "LOCAL_FULL_TEST_CONFIG :=", a.testConfig.String())
 		}
 	})
+	androidMkWriteTestData(a.data, &data)
 
 	return data
 }
@@ -375,3 +378,15 @@
 		},
 	}
 }
+
+func androidMkWriteTestData(data android.Paths, ret *android.AndroidMkData) {
+	var testFiles []string
+	for _, d := range data {
+		testFiles = append(testFiles, d.String()+":"+d.Rel())
+	}
+	if len(testFiles) > 0 {
+		ret.Extra = append(ret.Extra, func(w io.Writer, outputFile android.Path) {
+			fmt.Fprintln(w, "LOCAL_COMPATIBILITY_SUPPORT_FILES := "+strings.Join(testFiles, " "))
+		})
+	}
+}