@@ -42,6 +42,7 @@ import androidx.test.platform.app.InstrumentationRegistry
4242import com.duckduckgo.adclick.api.AdClickManager
4343import com.duckduckgo.anrs.api.CrashLogger
4444import com.duckduckgo.anrs.api.CrashLogger.Crash
45+ import com.duckduckgo.app.browser.SpecialUrlDetector.UrlType.Web
4546import com.duckduckgo.app.browser.WebViewErrorResponse.BAD_URL
4647import com.duckduckgo.app.browser.WebViewErrorResponse.CONNECTION
4748import com.duckduckgo.app.browser.WebViewErrorResponse.SSL_PROTOCOL_ERROR
@@ -427,6 +428,25 @@ class BrowserWebViewClientTest {
427428 verify(mockWebView).loadUrl(" www.youtube.com/watch?v=1234&origin=serp_auto" )
428429 }
429430
431+ @Test
432+ fun whenShouldOverrideWithWebThenDoNotAddQueryParam () = runTest {
433+ val urlType = Web (" www.youtube.com/watch?v=1234" )
434+ whenever(specialUrlDetector.determineType(initiatingUrl = any(), uri = any())).thenReturn(urlType)
435+ whenever(webResourceRequest.isForMainFrame).thenReturn(true )
436+ whenever(webResourceRequest.isRedirect).thenReturn(false )
437+ whenever(webResourceRequest.url).thenReturn(" www.youtube.com/watch?v=1234" .toUri())
438+ whenever(mockDuckDuckGoUrlDetector.isDuckDuckGoUrl(any())).thenReturn(true )
439+ val mockClientProvider: ClientBrandHintProvider = mock()
440+ whenever(mockClientProvider.shouldChangeBranding(any())).thenReturn(false )
441+ testee.clientProvider = mockClientProvider
442+ doNothing().whenever(listener).willOverrideUrl(any())
443+ val mockWebView = getImmediatelyInvokedMockWebView()
444+ whenever(mockWebView.url).thenReturn(" www.duckduckgo.com" )
445+ openInNewTabFlow.emit(Off )
446+
447+ assertFalse(testee.shouldOverrideUrlLoading(mockWebView, webResourceRequest))
448+ }
449+
430450 @UiThreadTest
431451 @Test
432452 fun whenAppLinkDetectedAndIsHandledThenReturnTrue () {
0 commit comments