Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(526)

Unified Diff: third_party/WebKit/Source/core/frame/csp/ContentSecurityPolicyTest.cpp

Issue 2532913002: Unreverting Embedding-CSP: Refactoring directive strings into enum. (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/frame/csp/ContentSecurityPolicyTest.cpp
diff --git a/third_party/WebKit/Source/core/frame/csp/ContentSecurityPolicyTest.cpp b/third_party/WebKit/Source/core/frame/csp/ContentSecurityPolicyTest.cpp
index b254f6f8bcd065522f161accce155a72182e4b6b..66eb6243a86a945b9eb3785fee106f1d210a47f0 100644
--- a/third_party/WebKit/Source/core/frame/csp/ContentSecurityPolicyTest.cpp
+++ b/third_party/WebKit/Source/core/frame/csp/ContentSecurityPolicyTest.cpp
@@ -911,4 +911,51 @@ TEST_F(ContentSecurityPolicyTest, ShouldEnforceEmbeddersPolicy) {
}
}
+TEST_F(ContentSecurityPolicyTest, DirectiveType) {
+ struct TestCase {
+ ContentSecurityPolicy::DirectiveType type;
+ const String& name;
+ } cases[] = {
+ {ContentSecurityPolicy::DirectiveType::BaseURI, "base-uri"},
+ {ContentSecurityPolicy::DirectiveType::BlockAllMixedContent,
+ "block-all-mixed-content"},
+ {ContentSecurityPolicy::DirectiveType::ChildSrc, "child-src"},
+ {ContentSecurityPolicy::DirectiveType::ConnectSrc, "connect-src"},
+ {ContentSecurityPolicy::DirectiveType::DefaultSrc, "default-src"},
+ {ContentSecurityPolicy::DirectiveType::FrameAncestors, "frame-ancestors"},
+ {ContentSecurityPolicy::DirectiveType::FrameSrc, "frame-src"},
+ {ContentSecurityPolicy::DirectiveType::FontSrc, "font-src"},
+ {ContentSecurityPolicy::DirectiveType::FormAction, "form-action"},
+ {ContentSecurityPolicy::DirectiveType::ImgSrc, "img-src"},
+ {ContentSecurityPolicy::DirectiveType::ManifestSrc, "manifest-src"},
+ {ContentSecurityPolicy::DirectiveType::MediaSrc, "media-src"},
+ {ContentSecurityPolicy::DirectiveType::ObjectSrc, "object-src"},
+ {ContentSecurityPolicy::DirectiveType::PluginTypes, "plugin-types"},
+ {ContentSecurityPolicy::DirectiveType::ReportURI, "report-uri"},
+ {ContentSecurityPolicy::DirectiveType::RequireSRIFor, "require-sri-for"},
+ {ContentSecurityPolicy::DirectiveType::Sandbox, "sandbox"},
+ {ContentSecurityPolicy::DirectiveType::ScriptSrc, "script-src"},
+ {ContentSecurityPolicy::DirectiveType::StyleSrc, "style-src"},
+ {ContentSecurityPolicy::DirectiveType::TreatAsPublicAddress,
+ "treat-as-public-address"},
+ {ContentSecurityPolicy::DirectiveType::UpgradeInsecureRequests,
+ "upgrade-insecure-requests"},
+ {ContentSecurityPolicy::DirectiveType::WorkerSrc, "worker-src"},
+ };
+
+ EXPECT_EQ(ContentSecurityPolicy::DirectiveType::Undefined,
+ ContentSecurityPolicy::getDirectiveType("random"));
+
+ for (const auto& test : cases) {
+ const String& nameFromType =
+ ContentSecurityPolicy::getDirectiveName(test.type);
+ ContentSecurityPolicy::DirectiveType typeFromName =
+ ContentSecurityPolicy::getDirectiveType(test.name);
+ EXPECT_EQ(nameFromType, test.name);
+ EXPECT_EQ(typeFromName, test.type);
+ EXPECT_EQ(test.type, ContentSecurityPolicy::getDirectiveType(nameFromType));
+ EXPECT_EQ(test.name, ContentSecurityPolicy::getDirectiveName(typeFromName));
+ }
+}
+
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698