X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-WebView.cpp;h=4e553e8c8c1f1ac512522378f1b94467c31e77bc;hb=cd4d7c8abf01e882eb063c05c443faa018e74dde;hp=4f7d8fac6482362d9c7768915c141eeaefaa4421;hpb=787268448801d95e2bccb7488059371b65912d8d;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit/utc-Dali-WebView.cpp b/automated-tests/src/dali-toolkit/utc-Dali-WebView.cpp index 4f7d8fa..4e553e8 100755 --- a/automated-tests/src/dali-toolkit/utc-Dali-WebView.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-WebView.cpp @@ -77,8 +77,6 @@ static bool gWheelEventHandled = false; static int gFormRepostDecidedCallbackCalled = 0; static std::unique_ptr gFormRepostDecidedInstance = nullptr; static int gFrameRenderedCallbackCalled = 0; -static int gRequestInterceptorCallbackCalled = 0; -static std::unique_ptr gRequestInterceptorInstance = nullptr; static int gConsoleMessageCallbackCalled = 0; static std::unique_ptr gConsoleMessageInstance = nullptr; static int gResponsePolicyDecidedCallbackCalled = 0; @@ -94,6 +92,8 @@ static int gStorageUsageAcquiredCallbackCalled = 0; static int gFormPasswordsAcquiredCallbackCalled = 0; static int gDownloadStartedCallbackCalled = 0; static int gMimeOverriddenCallbackCalled = 0; +static int gRequestInterceptedCallbackCalled = 0; +static Dali::WebEngineRequestInterceptorPtr gRequestInterceptorInstance = nullptr; static std::vector> gSecurityOriginList; static std::vector> gPasswordDataList; static int gContextMenuShownCallbackCalled = 0; @@ -102,6 +102,7 @@ static int gContextMenuHiddenCallbackCalled = 0; static std::unique_ptr gContextMenuHiddenInstance = nullptr; static int gHitTestCreatedCallbackCalled = 0; static int gCookieManagerChangsWatchCallbackCalled = 0; +static int gPlainTextReceivedCallbackCalled = 0; struct CallbackFunctor { @@ -154,6 +155,12 @@ static bool OnHitTestCreated(std::unique_ptr test) return true; } +static bool OnPlainTextReceived(const std::string& plainText) +{ + gPlainTextReceivedCallbackCalled++; + return true; +} + static void OnPageLoadError(std::unique_ptr error) { gPageLoadErrorCallbackCalled++; @@ -233,12 +240,6 @@ static void OnFrameRendered() gFrameRenderedCallbackCalled++; } -static void OnRequestInterceptor(std::unique_ptr interceptor) -{ - gRequestInterceptorCallbackCalled++; - gRequestInterceptorInstance = std::move(interceptor); -} - static void OnConsoleMessage(std::unique_ptr message) { gConsoleMessageCallbackCalled++; @@ -293,6 +294,13 @@ static bool OnMimeOverridden(const std::string&, const std::string&, std::string return false; } +static bool OnRequestIntercepted(Dali::WebEngineRequestInterceptorPtr interceptor) +{ + gRequestInterceptedCallbackCalled++; + gRequestInterceptorInstance = interceptor; + return false; +} + static void OnContextMenuShown(std::unique_ptr menu) { gContextMenuShownCallbackCalled++; @@ -1224,36 +1232,6 @@ int UtcDaliWebViewVideoPlayingGeolocationPermission(void) END_TEST; } -int UtcDaliWebViewHttpRequestInterceptor(void) -{ - ToolkitTestApplication application; - - WebView view = WebView::New(); - DALI_TEST_CHECK( view ); - - // load url. - view.RegisterRequestInterceptorCallback( &OnRequestInterceptor ); - DALI_TEST_EQUALS( gRequestInterceptorCallbackCalled, 0, TEST_LOCATION ); - DALI_TEST_CHECK(gRequestInterceptorInstance == 0); - - view.LoadUrl( TEST_URL1 ); - Test::EmitGlobalTimerSignal(); - DALI_TEST_EQUALS( gRequestInterceptorCallbackCalled, 1, TEST_LOCATION ); - - // check request interceptor. - DALI_TEST_CHECK(gRequestInterceptorInstance != 0); - DALI_TEST_CHECK(gRequestInterceptorInstance->Ignore()); - DALI_TEST_CHECK(gRequestInterceptorInstance->SetResponseStatus(400, "error")); - DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponseHeader("key", "value")); - DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponseBody("test", 4)); - std::string testUrl("http://test.html"); - DALI_TEST_EQUALS(gRequestInterceptorInstance->GetUrl(), testUrl, TEST_LOCATION); - - gRequestInterceptorInstance = nullptr; - - END_TEST; -} - int UtcDaliWebViewResponsePolicyDecisionRequest(void) { ToolkitTestApplication application; @@ -1327,8 +1305,8 @@ int UtcDaliWebViewHitTest(void) DALI_TEST_EQUALS(hitTest->GetTagName(), testTagName, TEST_LOCATION); std::string testNodeValue("test"); DALI_TEST_EQUALS(hitTest->GetNodeValue(), testNodeValue, TEST_LOCATION); - Dali::Property::Map* testMap = &hitTest->GetAttributes(); - DALI_TEST_CHECK(testMap); + Dali::Property::Map testMap = hitTest->GetAttributes(); + DALI_TEST_EQUALS(testMap.Count(), 0, TEST_LOCATION); std::string testImageFileNameExtension("jpg"); DALI_TEST_EQUALS(hitTest->GetImageFileNameExtension(), testImageFileNameExtension, TEST_LOCATION); Dali::PixelData testImageBuffer = hitTest->GetImageBuffer(); @@ -1661,6 +1639,47 @@ int UtcDaliWebContextGetWebDatabaseStorageOrigins(void) END_TEST; } +int UtcDaliWebContextHttpRequestInterceptor(void) +{ + ToolkitTestApplication application; + + WebView view = WebView::New(); + DALI_TEST_CHECK( view ); + + Dali::Toolkit::WebContext* context = view.GetContext(); + DALI_TEST_CHECK( context != 0 ) + + // load url. + context->RegisterRequestInterceptedCallback(&OnRequestIntercepted); + DALI_TEST_EQUALS(gRequestInterceptedCallbackCalled, 0, TEST_LOCATION); + DALI_TEST_CHECK(gRequestInterceptorInstance == 0); + + Test::EmitGlobalTimerSignal(); + DALI_TEST_EQUALS( gRequestInterceptedCallbackCalled, 1, TEST_LOCATION ); + + // check request interceptor. + DALI_TEST_CHECK(gRequestInterceptorInstance != 0); + DALI_TEST_CHECK(gRequestInterceptorInstance->Ignore()); + DALI_TEST_CHECK(gRequestInterceptorInstance->SetResponseStatus(400, "error")); + DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponseHeader("key1", "value1")); + Dali::Property::Map testHeaders; + testHeaders.Insert("key2", "value2"); + DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponseHeaders(testHeaders)); + DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponseBody("test", 4)); + DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponse("key:value", "test", 4)); + DALI_TEST_CHECK(gRequestInterceptorInstance->WriteResponseChunk("test", 4)); + std::string testUrl("http://test.html"); + DALI_TEST_EQUALS(gRequestInterceptorInstance->GetUrl(), testUrl, TEST_LOCATION); + std::string testMethod("GET"); + DALI_TEST_EQUALS(gRequestInterceptorInstance->GetMethod(), testMethod, TEST_LOCATION); + Dali::Property::Map resultHeaders = gRequestInterceptorInstance->GetHeaders(); + DALI_TEST_EQUALS(resultHeaders.Count(), 2, TEST_LOCATION); + + gRequestInterceptorInstance = nullptr; + + END_TEST; +} + // test cases for web cookie manager. int UtcDaliWebCookieManagerGetSetCookieAcceptPolicy(void) @@ -2294,3 +2313,19 @@ int UtcDaliWebSettingsSetExtraFeature(void) END_TEST; } +int UtcDaliWebViewGetPlainText(void) +{ + ToolkitTestApplication application; + + WebView view = WebView::New(); + DALI_TEST_CHECK(view); + + view.LoadUrl(TEST_URL1); + + view.GetPlainTextAsynchronously(&OnPlainTextReceived); + Test::EmitGlobalTimerSignal(); + DALI_TEST_EQUALS(gPlainTextReceivedCallbackCalled, 1, TEST_LOCATION); + + END_TEST; +} +