check-flagged-apis: add more details to Symbol class
Change Symbol from a wrapper around a String to a more fleshed out data
class; symbols now encode if they represent a class, or a class member
(including a reference to the containing class).
Bug: 334870672
Test: atest --host check-flagged-apis-test
Test: croot && ./build/tools/check-flagged-apis/check-flagged-apis.sh # with and without this CL; the output should be the same
Change-Id: I003535c721c45d559d00fb3e008325e1db0e18c0
diff --git a/tools/check-flagged-apis/src/com/android/checkflaggedapis/CheckFlaggedApisTest.kt b/tools/check-flagged-apis/src/com/android/checkflaggedapis/CheckFlaggedApisTest.kt
index 1f36a64..4835461 100644
--- a/tools/check-flagged-apis/src/com/android/checkflaggedapis/CheckFlaggedApisTest.kt
+++ b/tools/check-flagged-apis/src/com/android/checkflaggedapis/CheckFlaggedApisTest.kt
@@ -95,20 +95,20 @@
fun testParseApiSignature() {
val expected =
setOf(
- Pair(Symbol("android/Clazz"), Flag("android.flag.foo")),
- Pair(Symbol("android/Clazz/Clazz()"), Flag("android.flag.foo")),
- Pair(Symbol("android/Clazz/FOO"), Flag("android.flag.foo")),
- Pair(Symbol("android/Clazz/getErrorCode()"), Flag("android.flag.foo")),
+ Pair(Symbol.createClass("android/Clazz"), Flag("android.flag.foo")),
+ Pair(Symbol.createMethod("android/Clazz", "Clazz()"), Flag("android.flag.foo")),
+ Pair(Symbol.createField("android/Clazz", "FOO"), Flag("android.flag.foo")),
+ Pair(Symbol.createMethod("android/Clazz", "getErrorCode()"), Flag("android.flag.foo")),
Pair(
- Symbol("android/Clazz/setData(I[[ILandroid/util/Utility;)"),
+ Symbol.createMethod("android/Clazz", "setData(I[[ILandroid/util/Utility;)"),
Flag("android.flag.foo")),
Pair(
- Symbol("android/Clazz/setVariableData(I[Landroid/util/Atom;)"),
+ Symbol.createMethod("android/Clazz", "setVariableData(I[Landroid/util/Atom;)"),
Flag("android.flag.foo")),
Pair(
- Symbol("android/Clazz/innerClassArg(Landroid/Clazz/Builder;)"),
+ Symbol.createMethod("android/Clazz", "innerClassArg(Landroid/Clazz/Builder;)"),
Flag("android.flag.foo")),
- Pair(Symbol("android/Clazz/Builder"), Flag("android.flag.bar")),
+ Pair(Symbol.createClass("android/Clazz/Builder"), Flag("android.flag.bar")),
)
val actual = parseApiSignature("in-memory", API_SIGNATURE.byteInputStream())
assertEquals(expected, actual)
@@ -126,14 +126,14 @@
fun testParseApiVersions() {
val expected: Set<Symbol> =
setOf(
- Symbol("android/Clazz"),
- Symbol("android/Clazz/Clazz()"),
- Symbol("android/Clazz/FOO"),
- Symbol("android/Clazz/getErrorCode()"),
- Symbol("android/Clazz/setData(I[[ILandroid/util/Utility;)"),
- Symbol("android/Clazz/setVariableData(I[Landroid/util/Atom;)"),
- Symbol("android/Clazz/innerClassArg(Landroid/Clazz/Builder;)"),
- Symbol("android/Clazz/Builder"),
+ Symbol.createClass("android/Clazz"),
+ Symbol.createMethod("android/Clazz", "Clazz()"),
+ Symbol.createField("android/Clazz", "FOO"),
+ Symbol.createMethod("android/Clazz", "getErrorCode()"),
+ Symbol.createMethod("android/Clazz", "setData(I[[ILandroid/util/Utility;)"),
+ Symbol.createMethod("android/Clazz", "setVariableData(I[Landroid/util/Atom;)"),
+ Symbol.createMethod("android/Clazz", "innerClassArg(Landroid/Clazz/Builder;)"),
+ Symbol.createClass("android/Clazz/Builder"),
)
val actual = parseApiVersions(API_VERSIONS.byteInputStream())
assertEquals(expected, actual)
@@ -153,8 +153,8 @@
.trim()
val expected: Set<Symbol> =
setOf(
- Symbol("android/Clazz/Foo/Bar"),
- Symbol("android/Clazz/Foo/Bar/Bar()"),
+ Symbol.createClass("android/Clazz/Foo/Bar"),
+ Symbol.createMethod("android/Clazz/Foo/Bar", "Bar()"),
)
val actual = parseApiVersions(apiVersions.byteInputStream())
assertEquals(expected, actual)
@@ -175,23 +175,25 @@
fun testFindErrorsDisabledFlaggedApiIsPresent() {
val expected =
setOf<ApiError>(
- DisabledFlaggedApiIsPresentError(Symbol("android/Clazz"), Flag("android.flag.foo")),
DisabledFlaggedApiIsPresentError(
- Symbol("android/Clazz/Clazz()"), Flag("android.flag.foo")),
- DisabledFlaggedApiIsPresentError(Symbol("android/Clazz/FOO"), Flag("android.flag.foo")),
+ Symbol.createClass("android/Clazz"), Flag("android.flag.foo")),
DisabledFlaggedApiIsPresentError(
- Symbol("android/Clazz/getErrorCode()"), Flag("android.flag.foo")),
+ Symbol.createMethod("android/Clazz", "Clazz()"), Flag("android.flag.foo")),
DisabledFlaggedApiIsPresentError(
- Symbol("android/Clazz/setData(I[[ILandroid/util/Utility;)"),
+ Symbol.createField("android/Clazz", "FOO"), Flag("android.flag.foo")),
+ DisabledFlaggedApiIsPresentError(
+ Symbol.createMethod("android/Clazz", "getErrorCode()"), Flag("android.flag.foo")),
+ DisabledFlaggedApiIsPresentError(
+ Symbol.createMethod("android/Clazz", "setData(I[[ILandroid/util/Utility;)"),
Flag("android.flag.foo")),
DisabledFlaggedApiIsPresentError(
- Symbol("android/Clazz/setVariableData(I[Landroid/util/Atom;)"),
+ Symbol.createMethod("android/Clazz", "setVariableData(I[Landroid/util/Atom;)"),
Flag("android.flag.foo")),
DisabledFlaggedApiIsPresentError(
- Symbol("android/Clazz/innerClassArg(Landroid/Clazz/Builder;)"),
+ Symbol.createMethod("android/Clazz", "innerClassArg(Landroid/Clazz/Builder;)"),
Flag("android.flag.foo")),
DisabledFlaggedApiIsPresentError(
- Symbol("android/Clazz/Builder"), Flag("android.flag.bar")),
+ Symbol.createClass("android/Clazz/Builder"), Flag("android.flag.bar")),
)
val actual =
findErrors(