summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorMathieu <mathieu.a.chartier@gmail.com>2013-06-05 20:35:37 -0500
committerElliott Hughes <enh@google.com>2013-06-06 12:19:58 -0700
commitffecf3c5c207d0275d480970fd025cb9526b1905 (patch)
tree78c59722131533478b08a83dbba655fdc6fff200 /test
parent3ee7bb80f19079ea5a3ce303ea60e825aa65a3a2 (diff)
downloadandroid_external_doclava-ffecf3c5c207d0275d480970fd025cb9526b1905.tar.gz
android_external_doclava-ffecf3c5c207d0275d480970fd025cb9526b1905.tar.bz2
android_external_doclava-ffecf3c5c207d0275d480970fd025cb9526b1905.zip
Check superclasses recursively for changed superclasses.
We now check superclasses recursively instead of just doing a string comparison. This means that we no longer treat cases where the new superclass extends the old superclass as an error. Fixes https://android-review.googlesource.com/#/c/58400/1 Change-Id: I77ebb7312d0de83faed7dce0195682848256af73
Diffstat (limited to 'test')
-rw-r--r--test/api/inserted-super-1.xml8
-rw-r--r--test/api/inserted-super-2.xml8
-rw-r--r--test/doclava/ApiCheckTest.java9
3 files changed, 24 insertions, 1 deletions
diff --git a/test/api/inserted-super-1.xml b/test/api/inserted-super-1.xml
new file mode 100644
index 0000000..bbe0f48
--- /dev/null
+++ b/test/api/inserted-super-1.xml
@@ -0,0 +1,8 @@
+<api>
+<package name="test" >
+<class name="A" extends="java.lang.Object" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+<class name="B" extends="test.A" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+<class name="C1" extends="java.lang.Object" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+<class name="C2" extends="test.A" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+</package>
+</api>
diff --git a/test/api/inserted-super-2.xml b/test/api/inserted-super-2.xml
new file mode 100644
index 0000000..6434fff
--- /dev/null
+++ b/test/api/inserted-super-2.xml
@@ -0,0 +1,8 @@
+<api>
+<package name="test" >
+<class name="A" extends="java.lang.Object" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+<class name="B" extends="test.A" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+<class name="C1" extends="test.B" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+<class name="C2" extends="test.B" abstract="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+</package>
+</api>
diff --git a/test/doclava/ApiCheckTest.java b/test/doclava/ApiCheckTest.java
index af4918d..76ab864 100644
--- a/test/doclava/ApiCheckTest.java
+++ b/test/doclava/ApiCheckTest.java
@@ -103,6 +103,13 @@ public class ApiCheckTest extends TestCase {
assertEquals(Errors.CHANGED_SUPERCLASS, report.errors().iterator().next().error());
}
+ public void testInsertedSuper() {
+ String[] args = { "test/api/inserted-super-1.xml", "test/api/inserted-super-2.xml" };
+ ApiCheck apiCheck = new ApiCheck();
+ Report report = apiCheck.checkApi(args);
+ assertEquals(0, report.errors().size());
+ }
+
public void testAddedInterface() {
String[] args = { "test/api/removed-interface.xml", "test/api/medium.xml" };
ApiCheck apiCheck = new ApiCheck();
@@ -406,4 +413,4 @@ public class ApiCheckTest extends TestCase {
assertEquals(1, report.errors().size());
assertEquals(Errors.CHANGED_CLASS, report.errors().iterator().next().error());
}
-} \ No newline at end of file
+}