diff options
| author | 2024-07-26 16:53:28 +0000 | |
|---|---|---|
| committer | 2024-07-26 16:53:28 +0000 | |
| commit | afa8171d605ef7973bb4ef31994bc2af78b4842e (patch) | |
| tree | 85b97c36422b5f72e5326837b961f67ea96d4ecc | |
| parent | ad1fb534f8d99db6202b16d31d0482d67ad2cf34 (diff) | |
| parent | aec71934b87bd06b7381d883fa265b6285995a8c (diff) | |
Merge changes I796e09f8,If0782896 into main
* changes:
Extend wait time on background cleanup process
Move HintManagerServiceTest out of FrameworksServicesTests to a standlone module PerformanceHintTests
| -rw-r--r-- | services/core/java/com/android/server/power/hint/TEST_MAPPING | 23 | ||||
| -rw-r--r-- | services/tests/performancehinttests/Android.bp | 49 | ||||
| -rw-r--r-- | services/tests/performancehinttests/AndroidManifest.xml | 23 | ||||
| -rw-r--r-- | services/tests/performancehinttests/AndroidTest.xml | 34 | ||||
| -rw-r--r-- | services/tests/performancehinttests/OWNERS (renamed from services/tests/servicestests/src/com/android/server/power/hint/OWNERS) | 0 | ||||
| -rw-r--r-- | services/tests/performancehinttests/TEST_MAPPING | 19 | ||||
| -rw-r--r-- | services/tests/performancehinttests/src/com/android/server/power/hint/HintManagerServiceTest.java (renamed from services/tests/servicestests/src/com/android/server/power/hint/HintManagerServiceTest.java) | 14 | ||||
| -rw-r--r-- | services/tests/servicestests/Android.bp | 1 | ||||
| -rw-r--r-- | services/tests/servicestests/src/com/android/server/power/hint/TEST_MAPPING | 15 |
9 files changed, 139 insertions, 39 deletions
diff --git a/services/core/java/com/android/server/power/hint/TEST_MAPPING b/services/core/java/com/android/server/power/hint/TEST_MAPPING index 34c25c6eb360..99887863b885 100644 --- a/services/core/java/com/android/server/power/hint/TEST_MAPPING +++ b/services/core/java/com/android/server/power/hint/TEST_MAPPING @@ -1,27 +1,18 @@ { - "presubmit": [ + "postsubmit": [ { - "name": "FrameworksServicesTests", + "name": "PerformanceHintTests", "options": [ - { - "include-filter": "com.android.server.power.hint" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } + {"exclude-annotation": "androidx.test.filters.FlakyTest"}, + {"exclude-annotation": "org.junit.Ignore"} ] - } - ], - "postsubmit": [ + }, { "name": "CtsStatsdAtomHostTestCases", "options": [ + {"include-filter": "android.cts.statsdatom.performancehintmanager"}, {"exclude-annotation": "androidx.test.filters.FlakyTest"}, - {"exclude-annotation": "org.junit.Ignore"}, - {"include-filter": "android.cts.statsdatom.performancehintmanager"} - ], - "file_patterns": [ - "(/|^)HintManagerService.java" + {"exclude-annotation": "org.junit.Ignore"} ] } ] diff --git a/services/tests/performancehinttests/Android.bp b/services/tests/performancehinttests/Android.bp new file mode 100644 index 000000000000..79a1f58106c6 --- /dev/null +++ b/services/tests/performancehinttests/Android.bp @@ -0,0 +1,49 @@ +package { + default_team: "trendy_team_games", + default_applicable_licenses: ["frameworks_base_license"], +} + +android_test { + name: "PerformanceHintTests", + srcs: [ + "src/**/*.java", + ], + static_libs: [ + "androidx.test.runner", + "androidx.test.rules", + "flag-junit", + "junit", + "mockito-target-minus-junit4", + "platform-test-annotations", + "services.core", + "truth", + ], + libs: [ + "android.test.base", + ], + test_suites: [ + "automotive-tests", + "device-tests", + ], + platform_apis: true, + certificate: "platform", + dxflags: ["--multi-dex"], + optimize: { + enabled: false, + }, +} + +android_ravenwood_test { + name: "PerformanceHintTestsRavenwood", + static_libs: [ + "androidx.annotation_annotation", + "androidx.test.rules", + "flag-junit", + "services.core", + + ], + srcs: [ + "src/**/*.java", + ], + auto_gen_config: true, +} diff --git a/services/tests/performancehinttests/AndroidManifest.xml b/services/tests/performancehinttests/AndroidManifest.xml new file mode 100644 index 000000000000..d9552344efc5 --- /dev/null +++ b/services/tests/performancehinttests/AndroidManifest.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.server.power.hinttests"> + + <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner" + android:targetPackage="com.android.server.power.hinttests" + android:label="ADPF Performance Hint Service Test"/> +</manifest> diff --git a/services/tests/performancehinttests/AndroidTest.xml b/services/tests/performancehinttests/AndroidTest.xml new file mode 100644 index 000000000000..578b7d6ac5f1 --- /dev/null +++ b/services/tests/performancehinttests/AndroidTest.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<configuration description="Runs Performance Hint Tests."> + <option name="test-suite-tag" value="apct" /> + <option name="test-suite-tag" value="apct-instrumentation" /> + + <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> + <option name="cleanup-apks" value="true" /> + <option name="install-arg" value="-t" /> + <option name="test-file-name" value="PerformanceHintTests.apk" /> + </target_preparer> + + <option name="test-tag" value="PerformanceHintTests" /> + + <test class="com.android.tradefed.testtype.AndroidJUnitTest" > + <option name="package" value="com.android.server.power.hinttests" /> + <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" /> + <option name="hidden-api-checks" value="false"/> + <option name="exclude-annotation" value="androidx.test.filters.FlakyTest" /> + </test> +</configuration> diff --git a/services/tests/servicestests/src/com/android/server/power/hint/OWNERS b/services/tests/performancehinttests/OWNERS index c28c07a234b3..c28c07a234b3 100644 --- a/services/tests/servicestests/src/com/android/server/power/hint/OWNERS +++ b/services/tests/performancehinttests/OWNERS diff --git a/services/tests/performancehinttests/TEST_MAPPING b/services/tests/performancehinttests/TEST_MAPPING new file mode 100644 index 000000000000..faffe358f259 --- /dev/null +++ b/services/tests/performancehinttests/TEST_MAPPING @@ -0,0 +1,19 @@ +{ + "ravenwood-postsubmit": [ + { + "name": "PerformanceHintTestsRavenwood", + "host": true, + "options": [ + {"exclude-annotation": "android.platform.test.annotations.DisabledOnRavenwood"} + ] + } + ], + "postsubmit": [ + { + "name": "PerformanceHintTests", + "options": [ + {"exclude-annotation": "org.junit.Ignore"} + ] + } + ] +} diff --git a/services/tests/servicestests/src/com/android/server/power/hint/HintManagerServiceTest.java b/services/tests/performancehinttests/src/com/android/server/power/hint/HintManagerServiceTest.java index 1decd36be394..7d0447097375 100644 --- a/services/tests/servicestests/src/com/android/server/power/hint/HintManagerServiceTest.java +++ b/services/tests/performancehinttests/src/com/android/server/power/hint/HintManagerServiceTest.java @@ -596,7 +596,7 @@ public class HintManagerServiceTest { ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND, 0, 0); service.mUidObserver.onUidStateChanged(UID, ActivityManager.PROCESS_STATE_IMPORTANT_BACKGROUND, 0, 0); - LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500) + TimeUnit.MILLISECONDS.toNanos( + LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(1000) + TimeUnit.MILLISECONDS.toNanos( CLEAN_UP_UID_DELAY_MILLIS)); verify(mNativeWrapperMock, never()).halSetThreads(eq(sessionPtr1), any()); reset(mNativeWrapperMock); @@ -653,7 +653,7 @@ public class HintManagerServiceTest { ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND, 0, 0); service.mUidObserver.onUidStateChanged(UID, ActivityManager.PROCESS_STATE_IMPORTANT_BACKGROUND, 0, 0); - LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500) + TimeUnit.MILLISECONDS.toNanos( + LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(1000) + TimeUnit.MILLISECONDS.toNanos( CLEAN_UP_UID_DELAY_MILLIS)); verify(mNativeWrapperMock, never()).halSetThreads(eq(sessionPtr1), any()); verify(mNativeWrapperMock, never()).halSetThreads(eq(sessionPtr2), any()); @@ -666,7 +666,7 @@ public class HintManagerServiceTest { service.mUidObserver.onUidStateChanged(UID, ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND, 0, 0); // wait for the async uid state change to trigger resume and setThreads - LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500)); + LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(1000)); verify(mNativeWrapperMock, times(1)).halSetThreads(eq(sessionPtr2), eq(expectedTids2)); reset(mNativeWrapperMock); @@ -675,7 +675,7 @@ public class HintManagerServiceTest { LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(100)); service.mUidObserver.onUidStateChanged(UID, ActivityManager.PROCESS_STATE_IMPORTANT_BACKGROUND, 0, 0); - LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500) + TimeUnit.MILLISECONDS.toNanos( + LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(1000) + TimeUnit.MILLISECONDS.toNanos( CLEAN_UP_UID_DELAY_MILLIS)); verify(mNativeWrapperMock, times(1)).halPauseHintSession(eq(sessionPtr1)); verify(mNativeWrapperMock, never()).halSetThreads(eq(sessionPtr1), any()); @@ -684,7 +684,7 @@ public class HintManagerServiceTest { verifyAllHintsEnabled(session2, false); service.mUidObserver.onUidStateChanged(UID, ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND, 0, 0); - LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500)); + LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(1000)); verifyAllHintsEnabled(session1, false); verifyAllHintsEnabled(session2, true); reset(mNativeWrapperMock); @@ -705,7 +705,7 @@ public class HintManagerServiceTest { LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(100)); service.mUidObserver.onUidStateChanged(UID, ActivityManager.PROCESS_STATE_IMPORTANT_BACKGROUND, 0, 0); - LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500) + TimeUnit.MILLISECONDS.toNanos( + LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(1000) + TimeUnit.MILLISECONDS.toNanos( CLEAN_UP_UID_DELAY_MILLIS)); verify(mNativeWrapperMock, times(1)).halPauseHintSession(eq(sessionPtr1)); verify(mNativeWrapperMock, never()).halSetThreads(eq(sessionPtr1), any()); @@ -721,7 +721,7 @@ public class HintManagerServiceTest { service.mUidObserver.onUidStateChanged(UID, ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND, 0, 0); - LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500) + TimeUnit.MILLISECONDS.toNanos( + LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(1000) + TimeUnit.MILLISECONDS.toNanos( CLEAN_UP_UID_DELAY_MILLIS)); verify(mNativeWrapperMock, times(1)).halSetThreads(eq(sessionPtr1), eq(SESSION_TIDS_A)); diff --git a/services/tests/servicestests/Android.bp b/services/tests/servicestests/Android.bp index a888dadff5c6..a86289b317d0 100644 --- a/services/tests/servicestests/Android.bp +++ b/services/tests/servicestests/Android.bp @@ -78,7 +78,6 @@ android_test { // TODO: remove once Android migrates to JUnit 4.12, // which provides assertThrows "testng", - "truth", "junit", "junit-params", "ActivityContext", diff --git a/services/tests/servicestests/src/com/android/server/power/hint/TEST_MAPPING b/services/tests/servicestests/src/com/android/server/power/hint/TEST_MAPPING deleted file mode 100644 index 874eec75b229..000000000000 --- a/services/tests/servicestests/src/com/android/server/power/hint/TEST_MAPPING +++ /dev/null @@ -1,15 +0,0 @@ -{ - "presubmit": [ - { - "name": "FrameworksServicesTests", - "options": [ - { - "include-filter": "com.android.server.power.hint" - }, - { - "exclude-annotation": "androidx.test.filters.FlakyTest" - } - ] - } - ] -} |