diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-11-04 00:41:00 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-11-04 00:41:00 +0000 |
commit | 725bf3e2372b8ab29e521e864d28770fdf2c0443 (patch) | |
tree | d094f43841ac9dc9c54fd96ffd940b6f71f8ba39 /adservices/tests/unittest/service-core/src/com/android/adservices/service/customaudience/BackgroundFetchRunnerTest.java | |
parent | 190c25efdbd5a5bdbb41a2818cf39a05d0ea9be0 (diff) | |
parent | 7b99dc653ed133fef81d0423fee87d45299097e2 (diff) | |
download | AdServices-725bf3e2372b8ab29e521e864d28770fdf2c0443.tar.gz |
Snap for 9254005 from 7b99dc653ed133fef81d0423fee87d45299097e2 to mainline-ipsec-releaseaml_ips_331910010aml_ips_331312000aml_ips_331310000android13-mainline-ipsec-release
Change-Id: Id77860bb313cd5104abdea4a778d197a1db28861
Diffstat (limited to 'adservices/tests/unittest/service-core/src/com/android/adservices/service/customaudience/BackgroundFetchRunnerTest.java')
-rw-r--r-- | adservices/tests/unittest/service-core/src/com/android/adservices/service/customaudience/BackgroundFetchRunnerTest.java | 91 |
1 files changed, 83 insertions, 8 deletions
diff --git a/adservices/tests/unittest/service-core/src/com/android/adservices/service/customaudience/BackgroundFetchRunnerTest.java b/adservices/tests/unittest/service-core/src/com/android/adservices/service/customaudience/BackgroundFetchRunnerTest.java index 82db43e522..4024e8905a 100644 --- a/adservices/tests/unittest/service-core/src/com/android/adservices/service/customaudience/BackgroundFetchRunnerTest.java +++ b/adservices/tests/unittest/service-core/src/com/android/adservices/service/customaudience/BackgroundFetchRunnerTest.java @@ -20,7 +20,6 @@ import static com.android.dx.mockito.inline.extended.ExtendedMockito.any; import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn; import static com.android.dx.mockito.inline.extended.ExtendedMockito.eq; import static com.android.dx.mockito.inline.extended.ExtendedMockito.never; -import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; import static com.android.dx.mockito.inline.extended.ExtendedMockito.verify; import static org.junit.Assert.assertEquals; @@ -29,13 +28,16 @@ import static org.junit.Assert.assertTrue; import android.adservices.common.CommonFixture; import android.adservices.http.MockWebServerRule; +import android.content.pm.PackageManager; import android.net.Uri; import com.android.adservices.LogUtil; import com.android.adservices.MockWebServerRuleFactory; import com.android.adservices.customaudience.DBCustomAudienceBackgroundFetchDataFixture; import com.android.adservices.data.customaudience.CustomAudienceDao; +import com.android.adservices.data.customaudience.CustomAudienceStats; import com.android.adservices.data.customaudience.DBCustomAudienceBackgroundFetchData; +import com.android.adservices.data.enrollment.EnrollmentDao; import com.android.adservices.service.Flags; import com.android.adservices.service.FlagsFactory; import com.android.dx.mockito.inline.extended.ExtendedMockito; @@ -65,6 +67,8 @@ public class BackgroundFetchRunnerTest { private MockitoSession mStaticMockSession = null; @Mock private CustomAudienceDao mCustomAudienceDaoMock; + @Mock private PackageManager mPackageManagerMock; + @Mock private EnrollmentDao mEnrollmentDaoMock; private BackgroundFetchRunner mBackgroundFetchRunnerSpy; @Rule public MockWebServerRule mMockWebServerRule = MockWebServerRuleFactory.createForHttps(); @@ -81,8 +85,13 @@ public class BackgroundFetchRunnerTest { .initMocks(this) .startMocking(); - mBackgroundFetchRunnerSpy = new BackgroundFetchRunner(mCustomAudienceDaoMock, mFlags); - spyOn(mBackgroundFetchRunnerSpy); + mBackgroundFetchRunnerSpy = + ExtendedMockito.spy( + new BackgroundFetchRunner( + mCustomAudienceDaoMock, + mPackageManagerMock, + mEnrollmentDaoMock, + mFlags)); mFetchUri = mMockWebServerRule.uriForPath(mFetchPath); } @@ -95,16 +104,74 @@ public class BackgroundFetchRunnerTest { } @Test + public void testDeleteExpiredCustomAudiences() { + mBackgroundFetchRunnerSpy.deleteExpiredCustomAudiences(CommonFixture.FIXED_NOW); + + verify(mCustomAudienceDaoMock).deleteAllExpiredCustomAudienceData(CommonFixture.FIXED_NOW); + } + + @Test + public void testDeleteDisallowedOwnerCustomAudiences() { + doReturn( + CustomAudienceStats.builder() + .setTotalCustomAudienceCount(10) + .setTotalOwnerCount(2) + .build()) + .when(mCustomAudienceDaoMock) + .deleteAllDisallowedOwnerCustomAudienceData(any(), any()); + + mBackgroundFetchRunnerSpy.deleteDisallowedOwnerCustomAudiences(); + + verify(mCustomAudienceDaoMock) + .deleteAllDisallowedOwnerCustomAudienceData(mPackageManagerMock, mFlags); + } + + @Test + public void testDeleteDisallowedBuyerCustomAudiences() { + doReturn( + CustomAudienceStats.builder() + .setTotalCustomAudienceCount(12) + .setTotalBuyerCount(3) + .build()) + .when(mCustomAudienceDaoMock) + .deleteAllDisallowedBuyerCustomAudienceData(any(), any()); + + mBackgroundFetchRunnerSpy.deleteDisallowedBuyerCustomAudiences(); + + verify(mCustomAudienceDaoMock) + .deleteAllDisallowedBuyerCustomAudienceData(mEnrollmentDaoMock, mFlags); + } + + @Test public void testBackgroundFetchRunnerNullInputsCauseFailure() { - assertThrows(NullPointerException.class, () -> new BackgroundFetchRunner(null, mFlags)); assertThrows( NullPointerException.class, - () -> new BackgroundFetchRunner(mCustomAudienceDaoMock, null)); + () -> + new BackgroundFetchRunner( + null, mPackageManagerMock, mEnrollmentDaoMock, mFlags)); + assertThrows( + NullPointerException.class, + () -> + new BackgroundFetchRunner( + mCustomAudienceDaoMock, null, mEnrollmentDaoMock, mFlags)); + assertThrows( + NullPointerException.class, + () -> + new BackgroundFetchRunner( + mCustomAudienceDaoMock, mPackageManagerMock, null, mFlags)); + assertThrows( + NullPointerException.class, + () -> + new BackgroundFetchRunner( + mCustomAudienceDaoMock, + mPackageManagerMock, + mEnrollmentDaoMock, + null)); } @Test public void testUpdateCustomAudienceWithEmptyUpdate() { - doReturn(FlagsFactory.getFlagsForTest()).when(FlagsFactory::getFlags); + doReturn(mFlags).when(FlagsFactory::getFlags); CustomAudienceUpdatableData updatableData = CustomAudienceUpdatableDataFixture.getValidBuilderEmptySuccessfulResponse().build(); @@ -226,7 +293,11 @@ public class BackgroundFetchRunnerTest { } BackgroundFetchRunner runnerWithSmallLimits = - new BackgroundFetchRunner(mCustomAudienceDaoMock, new FlagsWithSmallLimits()); + new BackgroundFetchRunner( + mCustomAudienceDaoMock, + mPackageManagerMock, + mEnrollmentDaoMock, + new FlagsWithSmallLimits()); CountDownLatch responseLatch = new CountDownLatch(1); MockWebServer mockWebServer = @@ -301,7 +372,11 @@ public class BackgroundFetchRunnerTest { } BackgroundFetchRunner runnerWithSmallLimits = - new BackgroundFetchRunner(mCustomAudienceDaoMock, new FlagsWithSmallLimits()); + new BackgroundFetchRunner( + mCustomAudienceDaoMock, + mPackageManagerMock, + mEnrollmentDaoMock, + new FlagsWithSmallLimits()); MockWebServer mockWebServer = mMockWebServerRule.startMockWebServer( |