Title: [218154] trunk/Tools
Revision
218154
Author
dba...@webkit.org
Date
2017-06-12 16:52:25 -0700 (Mon, 12 Jun 2017)

Log Message

Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
https://bugs.webkit.org/show_bug.cgi?id=173286
<rdar://problem/32726102>

Reviewed by Brent Fulgham.

* TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
(TestWebKitAPI::TEST_F):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (218153 => 218154)


--- trunk/Tools/ChangeLog	2017-06-12 23:39:27 UTC (rev 218153)
+++ trunk/Tools/ChangeLog	2017-06-12 23:52:25 UTC (rev 218154)
@@ -1,3 +1,14 @@
+2017-06-12  Daniel Bates  <daba...@apple.com>
+
+        Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
+        https://bugs.webkit.org/show_bug.cgi?id=173286
+        <rdar://problem/32726102>
+
+        Reviewed by Brent Fulgham.
+
+        * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
+        (TestWebKitAPI::TEST_F):
+
 2017-06-12  Lucas Forschler  <lforsch...@apple.com>
 
         <rdar://problem/32683422>

Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp (218153 => 218154)


--- trunk/Tools/TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp	2017-06-12 23:39:27 UTC (rev 218153)
+++ trunk/Tools/TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp	2017-06-12 23:52:25 UTC (rev 218154)
@@ -1,5 +1,6 @@
 /*
  * Copyright (C) 2016 Igalia S.L.
+ * Copyright (C) 2017 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -143,4 +144,43 @@
     EXPECT_TRUE(tempFileOrigin->canAccess(quoteContainingOrigin.get()));
 }
 
+TEST_F(SecurityOriginTest, IsPotentiallyTrustworthy)
+{
+    // Potentially Trustworthy
+    EXPECT_TRUE(SecurityOrigin::create(URL(URL(), "file:///" + tempFilePath()))->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("blob:http://127.0.0.1/3D45F36F-C126-493A-A8AA-457FA495247B")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("blob:http://localhost/3D45F36F-C126-493A-A8AA-457FA495247B")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("blob:http://[::1]/3D45F36F-C126-493A-A8AA-457FA495247B")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("blob:https://example.com/3D45F36F-C126-493A-A8AA-457FA495247B")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("data:,a")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("about:")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("about:blank")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("about:srcdoc")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("wss://example.com")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("https://example.com")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://127.0.0.0")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://127.0.0.1")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://127.0.0.2")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://127.0.1.1")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://127.1.1.1")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://localhost")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://loCALhoST")->isPotentionallyTrustworthy());
+    EXPECT_TRUE(SecurityOrigin::createFromString("http://[::1]")->isPotentionallyTrustworthy());
+#if PLATFORM(COCOA)
+    EXPECT_TRUE(SecurityOrigin::createFromString("applewebdata:a")->isPotentionallyTrustworthy());
+#endif
+#if PLATFORM(GTK) || PLATFORM(WPE)
+    EXPECT_TRUE(SecurityOrigin::createFromString("resource:a")->isPotentionallyTrustworthy());
+#endif
+
+    // Not Trustworthy
+    EXPECT_FALSE(SecurityOrigin::createFromString("http:/malformed")->isPotentionallyTrustworthy());
+    EXPECT_FALSE(SecurityOrigin::createFromString("http://example.com")->isPotentionallyTrustworthy());
+    EXPECT_FALSE(SecurityOrigin::createFromString("http://31.13.77.36")->isPotentionallyTrustworthy());
+    EXPECT_FALSE(SecurityOrigin::createFromString("http://[2a03:2880:f10d:83:face:b00c::25de]")->isPotentionallyTrustworthy());
+    EXPECT_FALSE(SecurityOrigin::createFromString("ws://example.com")->isPotentionallyTrustworthy());
+    EXPECT_FALSE(SecurityOrigin::createFromString("blob:http://example.com/3D45F36F-C126-493A-A8AA-457FA495247B")->isPotentionallyTrustworthy());
+    EXPECT_FALSE(SecurityOrigin::createFromString("dummy:a")->isPotentionallyTrustworthy());
+}
+
 } // namespace TestWebKitAPI
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to