Add clean up to SysuiBaseFragmentTest
Also, set up AAA++ test for inheritance.
Test: atest SystemUITests
Fixes: 2133482724
Change-Id: If2484040f613b3112c224e8001d6e617dc5005b8
diff --git a/packages/SystemUI/Android.bp b/packages/SystemUI/Android.bp
index efd9eb9..ea83b83 100644
--- a/packages/SystemUI/Android.bp
+++ b/packages/SystemUI/Android.bp
@@ -129,8 +129,15 @@
}
filegroup {
+ name: "AAA-src",
+ srcs: ["tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java"],
+ path: "tests/src",
+}
+
+filegroup {
name: "SystemUI-tests-utils",
srcs: [
+ "tests/src/com/android/systemui/SysuiBaseFragmentTest.java",
"tests/src/com/android/systemui/SysuiTestCase.java",
"tests/src/com/android/systemui/TestableDependency.java",
"tests/src/com/android/systemui/classifier/FalsingManagerFake.java",
diff --git a/packages/SystemUI/tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java b/packages/SystemUI/tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java
index cbd6e86..0369d5b 100644
--- a/packages/SystemUI/tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java
+++ b/packages/SystemUI/tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java
@@ -110,6 +110,17 @@
private Collection<String> getClassNamesFromClassPath() {
ClassPathScanner scanner = new ClassPathScanner(mContext.getPackageCodePath());
+ ChainedClassNameFilter filter = makeClassNameFilter();
+
+ try {
+ return scanner.getClassPathEntries(filter);
+ } catch (IOException e) {
+ Log.e(getTag(), "Failed to scan classes", e);
+ }
+ return Collections.emptyList();
+ }
+
+ protected ChainedClassNameFilter makeClassNameFilter() {
ChainedClassNameFilter filter = new ChainedClassNameFilter();
filter.add(new ExternalClassNameFilter());
@@ -122,13 +133,7 @@
// the main SystemUI process. Therefore, exclude this package
// from the base class whitelist.
filter.add(s -> !s.startsWith("com.android.systemui.screenshot"));
-
- try {
- return scanner.getClassPathEntries(filter);
- } catch (IOException e) {
- Log.e(TAG, "Failed to scan classes", e);
- }
- return Collections.emptyList();
+ return filter;
}
private String getClsStr() {
@@ -212,8 +217,12 @@
* as loggable to limit log spam during normal use.
*/
private void logDebug(String msg) {
- if (Log.isLoggable(TAG, Log.DEBUG)) {
- Log.d(TAG, msg);
+ if (Log.isLoggable(getTag(), Log.DEBUG)) {
+ Log.d(getTag(), msg);
}
}
+
+ protected String getTag() {
+ return TAG;
+ }
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/SysuiBaseFragmentTest.java b/packages/SystemUI/tests/src/com/android/systemui/SysuiBaseFragmentTest.java
index 40549d69..8c20b24 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/SysuiBaseFragmentTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/SysuiBaseFragmentTest.java
@@ -29,8 +29,10 @@
import com.android.systemui.utils.leaks.LeakCheckedTest.SysuiLeakCheck;
import org.junit.After;
+import org.junit.AfterClass;
import org.junit.Before;
import org.junit.Rule;
+import org.mockito.Mockito;
public abstract class SysuiBaseFragmentTest extends BaseFragmentTest {
@@ -78,6 +80,11 @@
SystemUIFactory.cleanup();
}
+ @AfterClass
+ public static void mockitoTeardown() {
+ Mockito.framework().clearInlineMocks();
+ }
+
@Override
protected SysuiTestableContext getContext() {
return new SysuiTestableContext(InstrumentationRegistry.getContext(), mLeakCheck);