+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;
+}
+