From 063481a8c95372236a4e50835e59fa4a715e6086 Mon Sep 17 00:00:00 2001 From: Sabrina Tardio Date: Thu, 18 Jul 2024 13:55:24 +0200 Subject: [PATCH 1/5] NTP show end dialog only when fire button has been seen --- DuckDuckGo/DaxDialogs.swift | 2 +- DuckDuckGoTests/DaxDialogsNewTabTests.swift | 26 +++++++++++++++++---- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/DuckDuckGo/DaxDialogs.swift b/DuckDuckGo/DaxDialogs.swift index c77a40c4c2..3818b100dc 100644 --- a/DuckDuckGo/DaxDialogs.swift +++ b/DuckDuckGo/DaxDialogs.swift @@ -422,7 +422,7 @@ final class DaxDialogs: NewTabDialogSpecProvider { return .subsequent } - if firstBrowsingMessageSeen { + if settings.fireButtonPulseDateShown != nil { return .final } diff --git a/DuckDuckGoTests/DaxDialogsNewTabTests.swift b/DuckDuckGoTests/DaxDialogsNewTabTests.swift index 206b315b2b..cb677d62f5 100644 --- a/DuckDuckGoTests/DaxDialogsNewTabTests.swift +++ b/DuckDuckGoTests/DaxDialogsNewTabTests.swift @@ -28,7 +28,8 @@ final class DaxDialogsNewTabTests: XCTestCase { override func setUp() { settings = MockDaxDialogsSettings() - daxDialogs = DaxDialogs(settings: settings, entityProviding: MockEntityProvider()) + let mockVariantManager = MockVariantManager(isSupportedReturns: true) + daxDialogs = DaxDialogs(settings: settings, entityProviding: MockEntityProvider(), variantManager: mockVariantManager) } override func tearDown() { @@ -66,10 +67,11 @@ final class DaxDialogsNewTabTests: XCTestCase { XCTAssertEqual(homeScreenMessage, .subsequent) } - func testIfBrowsingAfterSearchShown_andBrowsingMajorTrackingSiteShown_OnNextHomeScreenMessageNew_ReturnsAddFavorite() { + func testIfBrowsingAfterSearchShown_andBrowsingMajorTrackingSiteShown_andFireAnimationShown_OnNextHomeScreenMessageNew_ReturnsAddFavorite() { // GIVEN settings.browsingAfterSearchShown = true settings.browsingMajorTrackingSiteShown = true + daxDialogs.fireButtonPulseStarted() // WHEN let homeScreenMessage = daxDialogs.nextHomeScreenMessageNew() @@ -78,10 +80,11 @@ final class DaxDialogsNewTabTests: XCTestCase { XCTAssertEqual(homeScreenMessage, .final) } - func testIfBrowsingAfterSearchShown_andBrowsingWithTrackersShown_OnNextHomeScreenMessageNew_ReturnsAddFavorite() { + func testIfBrowsingAfterSearchShown_andBrowsingWithTrackersShown_andFireAnimationShown_OnNextHomeScreenMessageNew_ReturnsFinal() { // GIVEN settings.browsingAfterSearchShown = true settings.browsingWithTrackersShown = true + daxDialogs.fireButtonPulseStarted() // WHEN let homeScreenMessage = daxDialogs.nextHomeScreenMessageNew() @@ -90,10 +93,11 @@ final class DaxDialogsNewTabTests: XCTestCase { XCTAssertEqual(homeScreenMessage, .final) } - func testIfBrowsingAfterSearchShown_andBrowsingWithoutTrackersShown_OnNextHomeScreenMessageNew_ReturnsAddFavorite() { + func testIfBrowsingAfterSearchShown_andBrowsingWithoutTrackersShown_andFireAnimationShown_OnNextHomeScreenMessageNew_ReturnsFinal() { // GIVEN settings.browsingAfterSearchShown = true settings.browsingWithoutTrackersShown = true + daxDialogs.fireButtonPulseStarted() // WHEN let homeScreenMessage = daxDialogs.nextHomeScreenMessageNew() @@ -102,6 +106,20 @@ final class DaxDialogsNewTabTests: XCTestCase { XCTAssertEqual(homeScreenMessage, .final) } + func testIfBrowsingAfterSearchShown_andTrackersDialogsShown_andFirreButtonAnimationNotShown_OnNextHomeScreenMessageNew_ReturnsNil() { + // GIVEN + settings.browsingAfterSearchShown = true + settings.browsingWithoutTrackersShown = true + settings.browsingMajorTrackingSiteShown = true + settings.browsingWithTrackersShown = true + + // WHEN + let homeScreenMessage = daxDialogs.nextHomeScreenMessageNew() + + // THEN + XCTAssertNil(homeScreenMessage) + } + } class MockDaxDialogsSettings: DaxDialogsSettings { From 6438ff6a1b11283f07f9a251f2273f36d9b5acff Mon Sep 17 00:00:00 2001 From: Sabrina Tardio Date: Thu, 18 Jul 2024 14:29:00 +0200 Subject: [PATCH 2/5] Fix TabSwitcherViewController Fire Button --- DuckDuckGo/TabSwitcherViewController.swift | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/DuckDuckGo/TabSwitcherViewController.swift b/DuckDuckGo/TabSwitcherViewController.swift index 545698b9d0..f8c3c54426 100644 --- a/DuckDuckGo/TabSwitcherViewController.swift +++ b/DuckDuckGo/TabSwitcherViewController.swift @@ -317,11 +317,17 @@ class TabSwitcherViewController: UIViewController { @IBAction func onFirePressed(sender: AnyObject) { Pixel.fire(pixel: .forgetAllPressedTabSwitching) - - if DaxDialogs.shared.shouldShowFireButtonPulse { + let isNewOnboarding = DefaultVariantManager().isSupported(feature: .newOnboardingIntro) + + if !isNewOnboarding + && DaxDialogs.shared.shouldShowFireButtonPulse { + ViewHighlighter.hideAll() let spec = DaxDialogs.shared.fireButtonEducationMessage() performSegue(withIdentifier: "ActionSheetDaxDialog", sender: spec) } else { + if isNewOnboarding { + ViewHighlighter.hideAll() + } let alert = ForgetDataAlert.buildAlert(forgetTabsAndDataHandler: { [weak self] in self?.forgetAll() }) From 890906751e3f41b389952fc2e34d200fc74bbc7d Mon Sep 17 00:00:00 2001 From: Sabrina Tardio Date: Fri, 19 Jul 2024 15:05:41 +0200 Subject: [PATCH 3/5] fix final dialog --- DuckDuckGo/DaxDialogs.swift | 8 ++++++-- DuckDuckGo/MainViewController.swift | 2 +- .../NewTabDaxDialogFactory.swift | 7 ++++++- ...tualOnboardingNewTabDialogFactoryTests.swift | 17 +++++++++++++++-- DuckDuckGoTests/DaxDialogsNewTabTests.swift | 12 +++--------- .../TabViewControllerDaxDialogTests.swift | 7 +++++++ 6 files changed, 38 insertions(+), 15 deletions(-) diff --git a/DuckDuckGo/DaxDialogs.swift b/DuckDuckGo/DaxDialogs.swift index 3faf136c26..b41a526e90 100644 --- a/DuckDuckGo/DaxDialogs.swift +++ b/DuckDuckGo/DaxDialogs.swift @@ -38,6 +38,7 @@ protocol NewTabDialogSpecProvider { protocol ContextualOnboardingLogic { func setFireEducationMessageSeen() + func setFinalOnboardingDialogSeen() } extension ContentBlockerRulesManager: EntityProviding { @@ -315,6 +316,11 @@ final class DaxDialogs: NewTabDialogSpecProvider, ContextualOnboardingLogic { settings.fireButtonEducationShownOrExpired = true } + func setFinalOnboardingDialogSeen() { + guard isNewOnboarding else { return } + settings.browsingFinalDialogShown = true + } + func nextBrowsingMessageIfShouldShow(for privacyInfo: PrivacyInfo) -> BrowsingSpec? { guard privacyInfo.url != lastURLDaxDialogReturnedFor else { return nil } @@ -446,8 +452,6 @@ final class DaxDialogs: NewTabDialogSpecProvider, ContextualOnboardingLogic { } if settings.fireButtonEducationShownOrExpired && !finalDaxDialogSeen { - // Ensure we don't show the final dialog again in context when the user sees it and vice-versa. - settings.browsingFinalDialogShown = true return .final } diff --git a/DuckDuckGo/MainViewController.swift b/DuckDuckGo/MainViewController.swift index c63a64c050..e0b87294f0 100644 --- a/DuckDuckGo/MainViewController.swift +++ b/DuckDuckGo/MainViewController.swift @@ -748,7 +748,7 @@ class MainViewController: UIViewController { addToContentContainer(controller: controller) viewCoordinator.logoContainer.isHidden = true } else { - let newTabDaxDialogFactory = NewTabDaxDialogFactory(delegate: self) + let newTabDaxDialogFactory = NewTabDaxDialogFactory(delegate: self, contextualOnboardingLogic: DaxDialogs.shared) let homePageDependencies = HomePageDependencies(homePageConfiguration: homePageConfiguration, model: tabModel, favoritesViewModel: favoritesViewModel, diff --git a/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/NewTabDaxDialogFactory.swift b/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/NewTabDaxDialogFactory.swift index 672d2cdd8a..b7c898dd66 100644 --- a/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/NewTabDaxDialogFactory.swift +++ b/DuckDuckGo/OnboardingExperiment/ContextualDaxDialogs/NewTabDaxDialogFactory.swift @@ -27,9 +27,11 @@ protocol NewTabDaxDialogProvider { class NewTabDaxDialogFactory: NewTabDaxDialogProvider { var delegate: OnboardingNavigationDelegate? + var contextualOnboardingLogic: ContextualOnboardingLogic - init(delegate: OnboardingNavigationDelegate?) { + init(delegate: OnboardingNavigationDelegate?, contextualOnboardingLogic: ContextualOnboardingLogic) { self.delegate = delegate + self.contextualOnboardingLogic = contextualOnboardingLogic } @ViewBuilder @@ -91,6 +93,9 @@ class NewTabDaxDialogFactory: NewTabDaxDialogProvider { }).padding() } } + .onAppear { [weak self] in + self?.contextualOnboardingLogic.setFinalOnboardingDialogSeen() + } } } diff --git a/DuckDuckGoTests/ContextualOnboardingNewTabDialogFactoryTests.swift b/DuckDuckGoTests/ContextualOnboardingNewTabDialogFactoryTests.swift index 2f9313d80a..dd72cbd7eb 100644 --- a/DuckDuckGoTests/ContextualOnboardingNewTabDialogFactoryTests.swift +++ b/DuckDuckGoTests/ContextualOnboardingNewTabDialogFactoryTests.swift @@ -25,19 +25,27 @@ class ContextualOnboardingNewTabDialogFactoryTests: XCTestCase { var factory: NewTabDaxDialogFactory! var mockDelegate: CapturingOnboardingNavigationDelegate! + var contextualOnboardingLogicMock: ContextualOnboardingLogicMock! var onDismissCalled: Bool! + var window: UIWindow! override func setUp() { super.setUp() mockDelegate = CapturingOnboardingNavigationDelegate() + contextualOnboardingLogicMock = ContextualOnboardingLogicMock() onDismissCalled = false - factory = NewTabDaxDialogFactory(delegate: mockDelegate) + factory = NewTabDaxDialogFactory(delegate: mockDelegate, contextualOnboardingLogic: contextualOnboardingLogicMock) + window = UIWindow(frame: UIScreen.main.bounds) + window.makeKeyAndVisible() } override func tearDown() { + window.isHidden = true + window = nil factory = nil mockDelegate = nil onDismissCalled = nil + contextualOnboardingLogicMock = nil super.tearDown() } @@ -73,6 +81,8 @@ class ContextualOnboardingNewTabDialogFactoryTests: XCTestCase { func testCreateFinalDialogCreatesAnOnboardingFinalDialog() { // Given + let expectation = XCTestExpectation(description: "action triggered") + contextualOnboardingLogicMock.expectation = expectation var onDismissedRun = false let homeDialog = DaxDialogs.HomeScreenSpec.final let onDimsiss = { onDismissedRun = true } @@ -80,6 +90,7 @@ class ContextualOnboardingNewTabDialogFactoryTests: XCTestCase { // When let view = factory.createDaxDialog(for: homeDialog, onDismiss: onDimsiss) let host = UIHostingController(rootView: view) + window.rootViewController = host XCTAssertNotNil(host.view) // Then @@ -87,9 +98,11 @@ class ContextualOnboardingNewTabDialogFactoryTests: XCTestCase { XCTAssertNotNil(finalDialog) finalDialog?.highFiveAction() XCTAssertTrue(onDismissedRun) + wait(for: [expectation], timeout: 5.0) + XCTAssertTrue(contextualOnboardingLogicMock.didCallsetFinalOnboardingDialogSeen) } - func testCreateAddFavoriteDialogCreatesAnContextualDaxDialog() { + func testCreateAddFavoriteDialogCreatesAContextualDaxDialog() { // Given let homeDialog = DaxDialogs.HomeScreenSpec.addFavorite diff --git a/DuckDuckGoTests/DaxDialogsNewTabTests.swift b/DuckDuckGoTests/DaxDialogsNewTabTests.swift index 3652f8a1e8..a3c220b6bb 100644 --- a/DuckDuckGoTests/DaxDialogsNewTabTests.swift +++ b/DuckDuckGoTests/DaxDialogsNewTabTests.swift @@ -71,45 +71,39 @@ final class DaxDialogsNewTabTests: XCTestCase { // GIVEN settings.browsingAfterSearchShown = true settings.browsingMajorTrackingSiteShown = true - daxDialogs.fireButtonPulseStarted() - XCTAssertFalse(settings.browsingFinalDialogShown) + settings.fireButtonEducationShownOrExpired = true // WHEN let homeScreenMessage = daxDialogs.nextHomeScreenMessageNew() // THEN XCTAssertEqual(homeScreenMessage, .final) - XCTAssertTrue(settings.browsingFinalDialogShown) } func testIfBrowsingAfterSearchShown_andBrowsingWithTrackersShown_andFireAnimationShown_OnNextHomeScreenMessageNew_ReturnsFinal() { // GIVEN settings.browsingAfterSearchShown = true settings.browsingWithTrackersShown = true - daxDialogs.fireButtonPulseStarted() - XCTAssertFalse(settings.browsingFinalDialogShown) + settings.fireButtonEducationShownOrExpired = true // WHEN let homeScreenMessage = daxDialogs.nextHomeScreenMessageNew() // THEN XCTAssertEqual(homeScreenMessage, .final) - XCTAssertTrue(settings.browsingFinalDialogShown) } func testIfBrowsingAfterSearchShown_andBrowsingWithoutTrackersShown_andFireAnimationShown_OnNextHomeScreenMessageNew_ReturnsFinal() { // GIVEN settings.browsingAfterSearchShown = true settings.browsingWithoutTrackersShown = true - daxDialogs.fireButtonPulseStarted() - XCTAssertFalse(settings.browsingFinalDialogShown) + settings.fireButtonEducationShownOrExpired = true // WHEN let homeScreenMessage = daxDialogs.nextHomeScreenMessageNew() // THEN XCTAssertEqual(homeScreenMessage, .final) - XCTAssertTrue(settings.browsingFinalDialogShown) } func testIfBrowsingAfterSearchShown_andTrackersDialogsShown_andFirreButtonFialogNotShown_OnNextHomeScreenMessageNew_ReturnsNil() { diff --git a/DuckDuckGoTests/TabViewControllerDaxDialogTests.swift b/DuckDuckGoTests/TabViewControllerDaxDialogTests.swift index 293706be4b..6359599c93 100644 --- a/DuckDuckGoTests/TabViewControllerDaxDialogTests.swift +++ b/DuckDuckGoTests/TabViewControllerDaxDialogTests.swift @@ -119,10 +119,17 @@ final class TabViewControllerDaxDialogTests: XCTestCase { } final class ContextualOnboardingLogicMock: ContextualOnboardingLogic { + var expectation: XCTestExpectation? private(set) var didCallSetFireEducationMessageSeen = false + private(set) var didCallsetFinalOnboardingDialogSeen = false func setFireEducationMessageSeen() { didCallSetFireEducationMessageSeen = true } + func setFinalOnboardingDialogSeen() { + didCallsetFinalOnboardingDialogSeen = true + expectation?.fulfill() + } + } From c72ebbae0caf0e323bc8fcce5512f466790126e5 Mon Sep 17 00:00:00 2001 From: Sabrina Tardio Date: Fri, 19 Jul 2024 16:13:09 +0200 Subject: [PATCH 4/5] fix site --- .../OnboardingSuggestedSitesProvider.swift | 2 +- .../OnboardingSuggestedSitesProviderTests.swift | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift b/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift index 8f0ae9ae47..901c3af165 100644 --- a/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift +++ b/DuckDuckGo/OnboardingHelpers/OnboardingSuggestedSitesProvider.swift @@ -107,7 +107,7 @@ struct OnboardingSuggestedSitesProvider: OnboardingSuggestionsItemsProviding { case .germany: site = "https://www.duden.de/rechtschreibung/Ente" case .netherlands: site = "https://www.woorden.org/woord/eend" case .sweden: site = "https://www.synonymer.se/sv-syn/anka" - default: site = "britannica.com/animal/duck" + default: site = "https:britannica.com/animal/duck" } return ContextualOnboardingListItem.surprise(title: site) } diff --git a/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift b/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift index 25b3767e5f..049c43b5bc 100644 --- a/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift +++ b/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift @@ -35,7 +35,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "bolasport.com")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "kompas.com")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "tokopedia.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "britannica.com/animal/duck")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "britannica.com/animal/duck")) } func testSuggestedSitesForGB() { @@ -50,7 +50,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "skysports.com")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "bbc.co.uk")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "eBay.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "britannica.com/animal/duck")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "britannica.com/animal/duck")) } func testSuggestedSitesForGermany() { @@ -80,7 +80,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "tsn.ca")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "cbc.ca")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "canadiantire.ca")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "britannica.com/animal/duck")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "britannica.com/animal/duck")) } func testSuggestedSitesForNetherlands() { @@ -95,7 +95,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "voetbalprimeur.nl")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "nu.nl")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "bol.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "https://www.woorden.org/woord/eend")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "https://www.woorden.org/woord/eend")) } func testSuggestedSitesForAustralia() { @@ -110,7 +110,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "afl.com.au")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "abc.net.au")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "eBay.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "britannica.com/animal/duck")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "britannica.com/animal/duck")) } func testSuggestedSitesForSweden() { @@ -140,7 +140,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "skysports.com")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "bbc.co.uk")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "eBay.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "britannica.com/animal/duck")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "britannica.com/animal/duck")) } func testSuggestedSitesForUS() { @@ -155,7 +155,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "ESPN.com")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "yahoo.com")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "eBay.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "britannica.com/animal/duck")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "britannica.com/animal/duck")) } func testSuggestedSitesForUnknownCountry() { @@ -170,6 +170,6 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "ESPN.com")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "yahoo.com")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "eBay.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "britannica.com/animal/duck")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: scheme + "britannica.com/animal/duck")) } } From 74cc764042bb01a6ba5cd6dba27a637c4e406e99 Mon Sep 17 00:00:00 2001 From: Alessandro Boron Date: Mon, 22 Jul 2024 19:30:34 +1000 Subject: [PATCH 5/5] Fix Swiftlint --- DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift b/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift index 049c43b5bc..4c6818e4f8 100644 --- a/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift +++ b/DuckDuckGoTests/OnboardingSuggestedSitesProviderTests.swift @@ -95,7 +95,7 @@ class OnboardingSuggestedSitesProviderTests: XCTestCase { XCTAssertEqual(sitesList[0], ContextualOnboardingListItem.site(title: scheme + "voetbalprimeur.nl")) XCTAssertEqual(sitesList[1], ContextualOnboardingListItem.site(title: scheme + "nu.nl")) XCTAssertEqual(sitesList[2], ContextualOnboardingListItem.site(title: scheme + "bol.com")) - XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "https://www.woorden.org/woord/eend")) + XCTAssertEqual(sitesList[3], ContextualOnboardingListItem.surprise(title: "https://www.woorden.org/woord/eend")) } func testSuggestedSitesForAustralia() {