2525import org .chromium .base .test .BaseJUnit4ClassRunner ;
2626import org .chromium .base .test .util .CommandLineFlags ;
2727import org .chromium .base .test .util .Features .EnableFeatures ;
28+ import org .chromium .chrome .browser .commerce .ShoppingServiceFactory ;
2829import org .chromium .chrome .browser .flags .ChromeFeatureList ;
2930import org .chromium .chrome .browser .flags .ChromeSwitches ;
30- import org .chromium .chrome .browser .optimization_guide .OptimizationGuideBridge ;
31- import org .chromium .chrome .browser .optimization_guide .OptimizationGuideBridgeFactory ;
32- import org .chromium .chrome .browser .optimization_guide .OptimizationGuideBridgeFactoryJni ;
3331import org .chromium .chrome .browser .price_tracking .PriceTrackingFeatures ;
3432import org .chromium .chrome .browser .profiles .Profile ;
3533import org .chromium .chrome .browser .profiles .ProfileManager ;
3634import org .chromium .chrome .browser .tab .Tab ;
35+ import org .chromium .chrome .browser .tab .state .ShoppingPersistedTabDataTestUtils .ShoppingServiceResponse ;
3736import org .chromium .chrome .test .ChromeBrowserTestRule ;
38- import org .chromium .components .optimization_guide . proto . HintsProto ;
37+ import org .chromium .components .commerce . core . ShoppingService ;
3938import org .chromium .content_public .browser .NavigationHandle ;
4039
4140import java .util .concurrent .Semaphore ;
4746public class ShoppingPersistedTabDataDeferredStartupTest {
4847 @ Rule public final ChromeBrowserTestRule mBrowserTestRule = new ChromeBrowserTestRule ();
4948
50- @ Mock protected OptimizationGuideBridgeFactory .Natives mOptimizationGuideBridgeFactoryJniMock ;
51- @ Mock protected OptimizationGuideBridge mOptimizationGuideBridgeMock ;
49+ @ Mock ShoppingService mShoppingService ;
5250
5351 @ Mock protected Profile mProfileMock ;
5452
@@ -59,12 +57,6 @@ public class ShoppingPersistedTabDataDeferredStartupTest {
5957 @ Before
6058 public void setUp () {
6159 MockitoAnnotations .initMocks (this );
62- OptimizationGuideBridgeFactoryJni .setInstanceForTesting (
63- mOptimizationGuideBridgeFactoryJniMock );
64- doReturn (mOptimizationGuideBridgeMock )
65- .when (mOptimizationGuideBridgeFactoryJniMock )
66- .getForProfile (mProfileMock );
67-
6860 ThreadUtils .runOnUiThreadBlocking (
6961 () -> {
7062 PersistedTabDataConfiguration .setUseTestConfig (true );
@@ -73,6 +65,7 @@ public void setUp() {
7365 PriceTrackingFeatures .setPriceTrackingEnabledForTesting (false );
7466 doReturn (true ).when (mNavigationHandle ).isInPrimaryMainFrame ();
7567 ShoppingPersistedTabDataService .setServiceForTesting (mShoppingPersistedTabDataService );
68+ ShoppingServiceFactory .setShoppingServiceForTesting (mShoppingService );
7669 }
7770
7871 @ SmallTest
@@ -81,12 +74,9 @@ public void setUp() {
8174 ChromeFeatureList .COMMERCE_PRICE_TRACKING
8275 + ":return_empty_price_drops_until_init/false" )
8376 public void testDeferredStartup () {
84- ShoppingPersistedTabDataTestUtils .mockOptimizationGuideResponse (
85- mOptimizationGuideBridgeMock ,
86- HintsProto .OptimizationType .PRICE_TRACKING ,
87- ShoppingPersistedTabDataTestUtils .MockPriceTrackingResponse
88- .BUYABLE_PRODUCT_AND_PRODUCT_UPDATE );
8977 final Tab tab = ShoppingPersistedTabDataTestUtils .createTabOnUiThread (0 , mProfileMock );
78+ ShoppingPersistedTabDataTestUtils .mockShoppingServiceResponse (
79+ mShoppingService , tab .getUrl (), ShoppingServiceResponse .PRICE_DROP_1 );
9080 Semaphore semaphore = new Semaphore (0 );
9181 ThreadUtils .runOnUiThreadBlocking (
9282 () -> {
@@ -115,12 +105,9 @@ public void testDeferredStartup() {
115105 @ EnableFeatures (
116106 ChromeFeatureList .COMMERCE_PRICE_TRACKING + ":return_empty_price_drops_until_init/true" )
117107 public void testReturnEmptyPriceDropsUntilInit () {
118- ShoppingPersistedTabDataTestUtils .mockOptimizationGuideResponse (
119- mOptimizationGuideBridgeMock ,
120- HintsProto .OptimizationType .PRICE_TRACKING ,
121- ShoppingPersistedTabDataTestUtils .MockPriceTrackingResponse
122- .BUYABLE_PRODUCT_AND_PRODUCT_UPDATE );
123108 final Tab tab = ShoppingPersistedTabDataTestUtils .createTabOnUiThread (0 , mProfileMock );
109+ ShoppingPersistedTabDataTestUtils .mockShoppingServiceResponse (
110+ mShoppingService , tab .getUrl (), ShoppingServiceResponse .PRICE_DROP_1 );
124111 final Semaphore semaphore = new Semaphore (0 );
125112 ThreadUtils .runOnUiThreadBlocking (
126113 () -> {
@@ -165,12 +152,9 @@ public void testReturnEmptyPriceDropsUntilInit() {
165152 @ EnableFeatures (
166153 ChromeFeatureList .COMMERCE_PRICE_TRACKING + ":return_empty_price_drops_until_init/true" )
167154 public void testSkipDelayedInitialization_NotSkip () {
168- ShoppingPersistedTabDataTestUtils .mockOptimizationGuideResponse (
169- mOptimizationGuideBridgeMock ,
170- HintsProto .OptimizationType .PRICE_TRACKING ,
171- ShoppingPersistedTabDataTestUtils .MockPriceTrackingResponse
172- .BUYABLE_PRODUCT_AND_PRODUCT_UPDATE );
173155 final Tab tab = ShoppingPersistedTabDataTestUtils .createTabOnUiThread (0 , mProfileMock );
156+ ShoppingPersistedTabDataTestUtils .mockShoppingServiceResponse (
157+ mShoppingService , tab .getUrl (), ShoppingServiceResponse .PRICE_DROP_1 );
174158 final Semaphore semaphore = new Semaphore (0 );
175159 ThreadUtils .runOnUiThreadBlocking (
176160 () -> {
@@ -191,13 +175,9 @@ public void testSkipDelayedInitialization_NotSkip() {
191175 @ EnableFeatures (
192176 ChromeFeatureList .COMMERCE_PRICE_TRACKING + ":return_empty_price_drops_until_init/true" )
193177 public void testSkipDelayedInitialization_Skip () {
194- ShoppingPersistedTabDataTestUtils .mockOptimizationGuideResponse (
195- mOptimizationGuideBridgeMock ,
196- HintsProto .OptimizationType .PRICE_TRACKING ,
197- ShoppingPersistedTabDataTestUtils .MockPriceTrackingResponse
198- .BUYABLE_PRODUCT_AND_PRODUCT_UPDATE );
199178 final Tab tab = ShoppingPersistedTabDataTestUtils .createTabOnUiThread (0 , mProfileMock );
200-
179+ ShoppingPersistedTabDataTestUtils .mockShoppingServiceResponse (
180+ mShoppingService , tab .getUrl (), ShoppingServiceResponse .PRICE_DROP_1 );
201181 final Semaphore semaphore = new Semaphore (0 );
202182 ThreadUtils .runOnUiThreadBlocking (
203183 () -> {
@@ -224,12 +204,6 @@ public void testSkipDelayedInitialization_Skip() {
224204 @ EnableFeatures (
225205 ChromeFeatureList .COMMERCE_PRICE_TRACKING + ":return_empty_price_drops_until_init/true" )
226206 public void testSkipDelayedInitialization_SkipForNullTab () {
227- ShoppingPersistedTabDataTestUtils .mockOptimizationGuideResponse (
228- mOptimizationGuideBridgeMock ,
229- HintsProto .OptimizationType .PRICE_TRACKING ,
230- ShoppingPersistedTabDataTestUtils .MockPriceTrackingResponse
231- .BUYABLE_PRODUCT_AND_PRODUCT_UPDATE );
232-
233207 final Semaphore semaphore = new Semaphore (0 );
234208 ThreadUtils .runOnUiThreadBlocking (
235209 () -> {
@@ -249,11 +223,6 @@ public void testSkipDelayedInitialization_SkipForNullTab() {
249223 @ EnableFeatures (
250224 ChromeFeatureList .COMMERCE_PRICE_TRACKING + ":return_empty_price_drops_until_init/true" )
251225 public void testSkipDelayedInitialization_SkipForDestroyedTab () {
252- ShoppingPersistedTabDataTestUtils .mockOptimizationGuideResponse (
253- mOptimizationGuideBridgeMock ,
254- HintsProto .OptimizationType .PRICE_TRACKING ,
255- ShoppingPersistedTabDataTestUtils .MockPriceTrackingResponse
256- .BUYABLE_PRODUCT_AND_PRODUCT_UPDATE );
257226 final Tab tab = mock (Tab .class );
258227 doReturn (true ).when (tab ).isDestroyed ();
259228
0 commit comments