summaryrefslogtreecommitdiffstats
path: root/webkit/tools
diff options
context:
space:
mode:
Diffstat (limited to 'webkit/tools')
-rw-r--r--webkit/tools/layout_tests/test_expectations.txt10
-rw-r--r--webkit/tools/test_shell/layout_test_controller.cc24
-rw-r--r--webkit/tools/test_shell/layout_test_controller.h3
3 files changed, 28 insertions, 9 deletions
diff --git a/webkit/tools/layout_tests/test_expectations.txt b/webkit/tools/layout_tests/test_expectations.txt
index 186dac9..e9587c3 100644
--- a/webkit/tools/layout_tests/test_expectations.txt
+++ b/webkit/tools/layout_tests/test_expectations.txt
@@ -1948,6 +1948,7 @@ BUG10475 WIN LINUX : LayoutTests/fast/forms/range-thumb-height-percentage.html =
SKIP BUG9613 : LayoutTests/fast/dom/clientWidthAfterDocumentIsRemoved.html = PASS
BUG10476 : LayoutTests/http/tests/xmlhttprequest/redirect-cross-origin-post.html = FAIL PASS
+BUG10476 : LayoutTests/http/tests/xmlhttprequest/redirect-cross-origin-post-sync.html = FAIL PASS
// Merge WebKit 42133:42199 regressions
BUG10477 WIN LINUX : LayoutTests/fast/repaint/reflection-repaint-test.html = FAIL
@@ -2893,12 +2894,3 @@ BUG19842 MAC : LayoutTests/fast/forms/input-type-change2.html = CRASH
// New test. WebKit change http://trac.webkit.org/changeset/47431
// Does not work in Chromium yet (not supporting wav format)
BUG19904 WIN : LayoutTests/media/progress-event-at-least-one.html = FAIL TIMEOUT
-
-// WebKit merge 47546:47575 new tests, WebKit change http://trac.webkit.org/changeset/47548
-BUG19835 LINUX WIN : LayoutTests/http/tests/xmlhttprequest/origin-whitelisting-all.html = TIMEOUT
-BUG19835 LINUX WIN : LayoutTests/http/tests/xmlhttprequest/origin-whitelisting-exact-match.html = TIMEOUT
-BUG19835 LINUX WIN : LayoutTests/http/tests/xmlhttprequest/origin-whitelisting-https.html = TIMEOUT
-BUG19835 LINUX WIN : LayoutTests/http/tests/xmlhttprequest/origin-whitelisting-ip-addresses-with-subdomains.html = TIMEOUT
-BUG19835 LINUX WIN : LayoutTests/http/tests/xmlhttprequest/origin-whitelisting-ip-addresses.html = TIMEOUT
-BUG19835 LINUX WIN : LayoutTests/http/tests/xmlhttprequest/origin-whitelisting-subdomains.html = TIMEOUT
-
diff --git a/webkit/tools/test_shell/layout_test_controller.cc b/webkit/tools/test_shell/layout_test_controller.cc
index fe09e99..d226575 100644
--- a/webkit/tools/test_shell/layout_test_controller.cc
+++ b/webkit/tools/test_shell/layout_test_controller.cc
@@ -15,7 +15,9 @@
#include "base/path_service.h"
#include "base/string_util.h"
#include "webkit/api/public/WebFrame.h"
+#include "webkit/api/public/WebKit.h"
#include "webkit/api/public/WebScriptSource.h"
+#include "webkit/api/public/WebURL.h"
#include "webkit/glue/dom_operations.h"
#include "webkit/glue/webpreferences.h"
#include "webkit/glue/webview.h"
@@ -118,6 +120,7 @@ LayoutTestController::LayoutTestController(TestShell* shell) {
BindMethod("setCustomPolicyDelegate", &LayoutTestController::setCustomPolicyDelegate);
BindMethod("waitForPolicyDelegate", &LayoutTestController::waitForPolicyDelegate);
BindMethod("setWillSendRequestReturnsNullOnRedirect", &LayoutTestController::setWillSendRequestReturnsNullOnRedirect);
+ BindMethod("whiteListAccessFromOrigin", &LayoutTestController::whiteListAccessFromOrigin);
// The following are stubs.
BindMethod("dumpAsWebArchive", &LayoutTestController::dumpAsWebArchive);
@@ -425,6 +428,8 @@ void LayoutTestController::Reset() {
globalFlag_.Set(false);
webHistoryItemCount_.Set(0);
+ WebKit::resetOriginAccessWhiteLists();
+
if (close_remaining_windows_) {
// Iterate through the window list and close everything except the original
// shell. We don't want to delete elements as we're iterating, so we copy
@@ -924,3 +929,22 @@ void LayoutTestController::fallbackMethod(
}
result->SetNull();
}
+
+void LayoutTestController::whiteListAccessFromOrigin(
+ const CppArgumentList& args, CppVariant* result)
+{
+ result->SetNull();
+
+ if (args.size() != 4 || !args[0].isString() || !args[1].isString() ||
+ !args[2].isString() || !args[3].isBool())
+ return;
+
+ WebKit::WebURL url(GURL(args[0].ToString()));
+ if (!url.isValid())
+ return;
+
+ WebKit::whiteListAccessFromOrigin(url,
+ WebString::fromUTF8(args[1].ToString()),
+ WebString::fromUTF8(args[2].ToString()),
+ args[3].ToBoolean());
+}
diff --git a/webkit/tools/test_shell/layout_test_controller.h b/webkit/tools/test_shell/layout_test_controller.h
index c16f185..47cda91 100644
--- a/webkit/tools/test_shell/layout_test_controller.h
+++ b/webkit/tools/test_shell/layout_test_controller.h
@@ -191,6 +191,9 @@ class LayoutTestController : public CppBoundClass {
// that case (as the Mac does).
void fallbackMethod(const CppArgumentList& args, CppVariant* result);
+ // Allows layout tests to call SecurityOrigin::whiteListAccessFromOrigin().
+ void whiteListAccessFromOrigin(const CppArgumentList& args, CppVariant* result);
+
public:
// The following methods are not exposed to JavaScript.
void SetWorkQueueFrozen(bool frozen) { work_queue_.set_frozen(frozen); }