From 7bc889a1834979d074d9d351a8d2f3118e8cbc77 Mon Sep 17 00:00:00 2001 From: Cathy Lu Date: Mon, 18 Dec 2023 15:38:01 -0600 Subject: [PATCH] Bug 1858948 - Update ProductNotAvailable test to use initial state --- .../shopping/store/ReviewQualityCheckStoreTest.kt | 45 ++++++---------------- 1 file changed, 12 insertions(+), 33 deletions(-) diff --git a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/shopping/store/ReviewQualityCheckStoreTest.kt b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/shopping/store/ReviewQualityCheckStoreTest.kt index 7833d84c8b22..a8132ef96c6e 100644 --- a/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/shopping/store/ReviewQualityCheckStoreTest.kt +++ b/mobile/android/fenix/app/src/test/java/org/mozilla/fenix/shopping/store/ReviewQualityCheckStoreTest.kt @@ -1335,16 +1335,23 @@ class ReviewQualityCheckStoreTest { } @Test - fun `GIVEN deletedProduct is true WHEN report back in stock returns not deleted THEN state is updated to no analysis`() = + fun `GIVEN ProductNotAvailable WHEN report back in stock returns not deleted THEN state is updated to no analysis`() = runTest { val tested = ReviewQualityCheckStore( + initialState = ReviewQualityCheckState.OptedIn( + productReviewState = ReviewQualityCheckState.OptedIn.ProductReviewState.Error.ProductNotAvailable, + productRecommendationsPreference = false, + productRecommendationsExposure = true, + productVendor = ProductVendor.BEST_BUY, + ), middleware = provideReviewQualityCheckMiddleware( reviewQualityCheckPreferences = FakeReviewQualityCheckPreferences(isEnabled = true), reviewQualityCheckService = FakeReviewQualityCheckService( productAnalysis = { ProductAnalysisTestData.productAnalysis( - deletedProduct = true, - deletedProductReported = false, + grade = null, + adjustedRating = null, + needsAnalysis = true, ) }, reanalysis = AnalysisStatusDto.PENDING, @@ -1357,45 +1364,17 @@ class ReviewQualityCheckStoreTest { tested.waitUntilIdle() dispatcher.scheduler.advanceUntilIdle() tested.waitUntilIdle() - tested.dispatch(ReviewQualityCheckAction.FetchProductAnalysis).joinBlocking() + tested.dispatch(ReviewQualityCheckAction.ReportProductBackInStock).joinBlocking() tested.waitUntilIdle() dispatcher.scheduler.advanceUntilIdle() val expected = ReviewQualityCheckState.OptedIn( - productReviewState = ReviewQualityCheckState.OptedIn.ProductReviewState.Error.ProductNotAvailable, + productReviewState = ProductAnalysisTestData.noAnalysisPresent(progress = -1f), productRecommendationsPreference = false, productRecommendationsExposure = true, productVendor = ProductVendor.BEST_BUY, ) assertEquals(expected, tested.state) - - val noAnalysisTested = ReviewQualityCheckStore( - middleware = provideReviewQualityCheckMiddleware( - reviewQualityCheckPreferences = FakeReviewQualityCheckPreferences(isEnabled = true), - reviewQualityCheckService = FakeReviewQualityCheckService( - productAnalysis = { - ProductAnalysisTestData.productAnalysis( - grade = null, - adjustedRating = null, - needsAnalysis = true, - ) - }, - reanalysis = AnalysisStatusDto.PENDING, - statusProgress = { null }, - report = ReportBackInStockStatusDto.NOT_DELETED, - ), - networkChecker = FakeNetworkChecker(isConnected = true), - ), - ) - - noAnalysisTested.dispatch(ReviewQualityCheckAction.ReportProductBackInStock).joinBlocking() - noAnalysisTested.waitUntilIdle() - dispatcher.scheduler.advanceUntilIdle() - - val reportExpected = expected.copy( - productReviewState = ProductAnalysisTestData.noAnalysisPresent(progress = -1f), - ) - assertEquals(reportExpected, noAnalysisTested.state) } @Test -- 2.11.4.GIT