Set http response body in binary format.
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-WebView.cpp
index 4e553e8..f08d0e8 100755 (executable)
@@ -80,6 +80,7 @@ static int gFrameRenderedCallbackCalled = 0;
 static int gConsoleMessageCallbackCalled = 0;
 static std::unique_ptr<Dali::WebEngineConsoleMessage> gConsoleMessageInstance = nullptr;
 static int gResponsePolicyDecidedCallbackCalled = 0;
+static int gNavigationPolicyDecidedCallbackCalled = 0;
 static std::unique_ptr<Dali::WebEnginePolicyDecision> gResponsePolicyDecisionInstance = nullptr;
 static int gCertificateConfirmCallbackCalled = 0;
 static std::unique_ptr<Dali::WebEngineCertificate> gCertificateConfirmInstance = nullptr;
@@ -144,6 +145,11 @@ static void OnResponsePolicyDecided(std::unique_ptr<Dali::WebEnginePolicyDecisio
   gResponsePolicyDecisionInstance = std::move(decision);
 }
 
+static void OnNavigationPolicyDecided(std::unique_ptr<Dali::WebEnginePolicyDecision> decision)
+{
+  gNavigationPolicyDecidedCallbackCalled++;
+}
+
 static void OnUrlChanged(const std::string& url)
 {
   gUrlChangedCallbackCalled++;
@@ -1277,6 +1283,24 @@ int UtcDaliWebViewResponsePolicyDecisionRequest(void)
   END_TEST;
 }
 
+int UtcDaliWebViewNavigationPolicyDecisionRequest(void)
+{
+  ToolkitTestApplication application;
+
+  WebView view = WebView::New();
+  DALI_TEST_CHECK(view);
+
+  // load url.
+  view.RegisterNavigationPolicyDecidedCallback(&OnNavigationPolicyDecided);
+  DALI_TEST_EQUALS(gNavigationPolicyDecidedCallbackCalled, 0, TEST_LOCATION);
+
+  view.LoadUrl(TEST_URL1);
+  Test::EmitGlobalTimerSignal();
+  DALI_TEST_EQUALS(gNavigationPolicyDecidedCallbackCalled, 1, TEST_LOCATION);
+
+  END_TEST;
+}
+
 int UtcDaliWebViewHitTest(void)
 {
   ToolkitTestApplication application;
@@ -1652,22 +1676,22 @@ int UtcDaliWebContextHttpRequestInterceptor(void)
   // load url.
   context->RegisterRequestInterceptedCallback(&OnRequestIntercepted);
   DALI_TEST_EQUALS(gRequestInterceptedCallbackCalled, 0, TEST_LOCATION);
-  DALI_TEST_CHECK(gRequestInterceptorInstance == 0);
+  DALI_TEST_CHECK(!gRequestInterceptorInstance);
 
   Test::EmitGlobalTimerSignal();
   DALI_TEST_EQUALS( gRequestInterceptedCallbackCalled, 1, TEST_LOCATION );
 
   // check request interceptor.
-  DALI_TEST_CHECK(gRequestInterceptorInstance != 0);
+  DALI_TEST_CHECK(gRequestInterceptorInstance);
   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));
+  DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponseBody((const int8_t*)"test", 4));
+  DALI_TEST_CHECK(gRequestInterceptorInstance->AddResponse("key:value", (const int8_t*)"test", 4));
+  DALI_TEST_CHECK(gRequestInterceptorInstance->WriteResponseChunk((const int8_t*)"test", 4));
   std::string testUrl("http://test.html");
   DALI_TEST_EQUALS(gRequestInterceptorInstance->GetUrl(), testUrl, TEST_LOCATION);
   std::string testMethod("GET");
@@ -2328,4 +2352,3 @@ int UtcDaliWebViewGetPlainText(void)
 
   END_TEST;
 }
-