From ec4b6778b7de70a740b67246c2334bb2da70f141 Mon Sep 17 00:00:00 2001 From: Jason Monk Date: Wed, 6 Dec 2017 10:31:09 -0500 Subject: [PATCH] Move notification service tests to be ui services tests Also fix up ScheduleConditionProviderTest to not require weird looper stuff. Test: mm Test: runtest --path ./ Test: atest . Change-Id: Icb4c093b77d380f41d247600fe8a680fc9490093 --- .../Android.mk | 4 +- .../AndroidManifest.xml | 4 +- .../AndroidTest.xml | 8 ++-- .../notification/AlertRateLimiterTest.java | 0 .../notification/BadgeExtractorTest.java | 0 .../notification/BuzzBeepBlinkTest.java | 0 .../GlobalSortKeyComparatorTest.java | 0 .../server/notification/GroupHelperTest.java | 0 .../notification/ImportanceExtractorTest.java | 0 .../notification/ManagedServicesTest.java | 0 .../NotificationAdjustmentExtractorTest.java | 0 .../NotificationChannelExtractorTest.java | 0 .../notification/NotificationChannelTest.java | 0 .../NotificationComparatorTest.java | 0 ...otificationIntrusivenessExtractorTest.java | 0 .../NotificationListenerServiceTest.java | 0 .../NotificationManagerServiceTest.java | 0 .../notification/NotificationRecordTest.java | 0 .../notification/NotificationStatsTest.java | 0 .../server/notification/NotificationTest.java | 0 .../notification/NotificationTestCase.java | 0 .../notification/RankingHelperTest.java | 0 .../notification/RateEstimatorTest.java | 0 .../notification/ScheduleCalendarTest.java | 0 .../ScheduleConditionProviderTest.java | 40 ++++++++++--------- .../server/notification/SnoozeHelperTest.java | 0 .../ValidateNotificationPeopleTest.java | 0 .../notification/ZenModeHelperTest.java | 0 28 files changed, 29 insertions(+), 27 deletions(-) rename services/tests/{notification => uiservicestests}/Android.mk (93%) rename services/tests/{notification => uiservicestests}/AndroidManifest.xml (92%) rename services/tests/{notification => uiservicestests}/AndroidTest.xml (82%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/AlertRateLimiterTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/BadgeExtractorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/BuzzBeepBlinkTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/GlobalSortKeyComparatorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/GroupHelperTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/ImportanceExtractorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/ManagedServicesTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationAdjustmentExtractorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationChannelExtractorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationChannelTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationComparatorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationIntrusivenessExtractorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationListenerServiceTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationManagerServiceTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationRecordTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationStatsTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/NotificationTestCase.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/RankingHelperTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/RateEstimatorTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/ScheduleCalendarTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/ScheduleConditionProviderTest.java (93%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/SnoozeHelperTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/ValidateNotificationPeopleTest.java (100%) rename services/tests/{notification => uiservicestests}/src/com/android/server/notification/ZenModeHelperTest.java (100%) diff --git a/services/tests/notification/Android.mk b/services/tests/uiservicestests/Android.mk similarity index 93% rename from services/tests/notification/Android.mk rename to services/tests/uiservicestests/Android.mk index 597a5849a1a0b..16d0c81299d72 100644 --- a/services/tests/notification/Android.mk +++ b/services/tests/uiservicestests/Android.mk @@ -1,5 +1,5 @@ ######################################################################### -# Build FrameworksNotificationTests package +# Build FrameworksUiServicesTests package ######################################################################### LOCAL_PATH:= $(call my-dir) @@ -30,7 +30,7 @@ LOCAL_JAVA_LIBRARIES := android.test.runner LOCAL_JACK_FLAGS := --multi-dex native LOCAL_DX_FLAGS := --multi-dex -LOCAL_PACKAGE_NAME := FrameworksNotificationTests +LOCAL_PACKAGE_NAME := FrameworksUiServicesTests LOCAL_COMPATIBILITY_SUITE := device-tests LOCAL_CERTIFICATE := platform diff --git a/services/tests/notification/AndroidManifest.xml b/services/tests/uiservicestests/AndroidManifest.xml similarity index 92% rename from services/tests/notification/AndroidManifest.xml rename to services/tests/uiservicestests/AndroidManifest.xml index c20020abb85c7..621b4572c467a 100644 --- a/services/tests/notification/AndroidManifest.xml +++ b/services/tests/uiservicestests/AndroidManifest.xml @@ -15,7 +15,7 @@ --> + package="com.android.frameworks.tests.uiservices"> @@ -32,6 +32,6 @@ diff --git a/services/tests/notification/AndroidTest.xml b/services/tests/uiservicestests/AndroidTest.xml similarity index 82% rename from services/tests/notification/AndroidTest.xml rename to services/tests/uiservicestests/AndroidTest.xml index 448bc3de5a0eb..d3b9d4a72ab81 100644 --- a/services/tests/notification/AndroidTest.xml +++ b/services/tests/uiservicestests/AndroidTest.xml @@ -13,16 +13,16 @@ See the License for the specific language governing permissions and limitations under the License. --> - + - diff --git a/services/tests/notification/src/com/android/server/notification/AlertRateLimiterTest.java b/services/tests/uiservicestests/src/com/android/server/notification/AlertRateLimiterTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/AlertRateLimiterTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/AlertRateLimiterTest.java diff --git a/services/tests/notification/src/com/android/server/notification/BadgeExtractorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/BadgeExtractorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/BadgeExtractorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/BadgeExtractorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/BuzzBeepBlinkTest.java b/services/tests/uiservicestests/src/com/android/server/notification/BuzzBeepBlinkTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/BuzzBeepBlinkTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/BuzzBeepBlinkTest.java diff --git a/services/tests/notification/src/com/android/server/notification/GlobalSortKeyComparatorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/GlobalSortKeyComparatorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/GlobalSortKeyComparatorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/GlobalSortKeyComparatorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/GroupHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/GroupHelperTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/GroupHelperTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/GroupHelperTest.java diff --git a/services/tests/notification/src/com/android/server/notification/ImportanceExtractorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ImportanceExtractorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/ImportanceExtractorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/ImportanceExtractorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/ManagedServicesTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ManagedServicesTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/ManagedServicesTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/ManagedServicesTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationAdjustmentExtractorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationAdjustmentExtractorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationAdjustmentExtractorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationAdjustmentExtractorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationChannelExtractorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationChannelExtractorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationChannelExtractorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationChannelExtractorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationChannelTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationChannelTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationChannelTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationChannelTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationComparatorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationComparatorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationComparatorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationComparatorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationIntrusivenessExtractorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationIntrusivenessExtractorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationIntrusivenessExtractorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationIntrusivenessExtractorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationListenerServiceTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationListenerServiceTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationListenerServiceTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationListenerServiceTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationManagerServiceTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationManagerServiceTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationManagerServiceTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationRecordTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationRecordTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationRecordTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationRecordTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationStatsTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationStatsTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationStatsTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationStatsTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationTest.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationTest.java diff --git a/services/tests/notification/src/com/android/server/notification/NotificationTestCase.java b/services/tests/uiservicestests/src/com/android/server/notification/NotificationTestCase.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/NotificationTestCase.java rename to services/tests/uiservicestests/src/com/android/server/notification/NotificationTestCase.java diff --git a/services/tests/notification/src/com/android/server/notification/RankingHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/RankingHelperTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/RankingHelperTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/RankingHelperTest.java diff --git a/services/tests/notification/src/com/android/server/notification/RateEstimatorTest.java b/services/tests/uiservicestests/src/com/android/server/notification/RateEstimatorTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/RateEstimatorTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/RateEstimatorTest.java diff --git a/services/tests/notification/src/com/android/server/notification/ScheduleCalendarTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ScheduleCalendarTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/ScheduleCalendarTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/ScheduleCalendarTest.java diff --git a/services/tests/notification/src/com/android/server/notification/ScheduleConditionProviderTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ScheduleConditionProviderTest.java similarity index 93% rename from services/tests/notification/src/com/android/server/notification/ScheduleConditionProviderTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/ScheduleConditionProviderTest.java index ba5ad81590298..610592f6b71ce 100644 --- a/services/tests/notification/src/com/android/server/notification/ScheduleConditionProviderTest.java +++ b/services/tests/uiservicestests/src/com/android/server/notification/ScheduleConditionProviderTest.java @@ -1,49 +1,51 @@ package com.android.server.notification; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.spy; import android.content.Intent; import android.net.Uri; -import android.os.Looper; import android.service.notification.Condition; import android.service.notification.ScheduleCalendar; import android.service.notification.ZenModeConfig; -import android.support.test.InstrumentationRegistry; -import android.test.ServiceTestCase; -import android.testing.TestableContext; +import android.support.test.filters.SmallTest; +import android.support.test.runner.AndroidJUnit4; import org.junit.Before; -import org.junit.Rule; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.MockitoAnnotations; import java.util.Calendar; import java.util.GregorianCalendar; -public class ScheduleConditionProviderTest extends ServiceTestCase { +@RunWith(AndroidJUnit4.class) +@SmallTest +public class ScheduleConditionProviderTest extends NotificationTestCase { ScheduleConditionProvider mService; - @Rule - public final TestableContext mContext = - new TestableContext(InstrumentationRegistry.getContext(), null); - - public ScheduleConditionProviderTest() { - super(ScheduleConditionProvider.class); - } - @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); - if (Looper.myLooper() == null) { - Looper.prepare(); - } Intent startIntent = new Intent("com.android.server.notification.ScheduleConditionProvider"); startIntent.setPackage("android"); - bindService(startIntent); - mService = spy(getService()); + ScheduleConditionProvider service = new ScheduleConditionProvider(); + service.attach( + getContext(), + null, // ActivityThread not actually used in Service + ScheduleConditionProvider.class.getName(), + null, // token not needed when not talking with the activity manager + null, + null // mocked services don't talk with the activity manager + ); + service.onCreate(); + service.onBind(startIntent); + mService = spy(service); } @Test diff --git a/services/tests/notification/src/com/android/server/notification/SnoozeHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/SnoozeHelperTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/SnoozeHelperTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/SnoozeHelperTest.java diff --git a/services/tests/notification/src/com/android/server/notification/ValidateNotificationPeopleTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ValidateNotificationPeopleTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/ValidateNotificationPeopleTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/ValidateNotificationPeopleTest.java diff --git a/services/tests/notification/src/com/android/server/notification/ZenModeHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java similarity index 100% rename from services/tests/notification/src/com/android/server/notification/ZenModeHelperTest.java rename to services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java