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

Side by Side Diff: third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp

Issue 2918313002: Implement new referrer policies (Closed)
Patch Set: update public/platform/OWNERS per presubmit Created 3 years, 6 months 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2014 Google Inc. All rights reserved. 2 * Copyright (C) 2014 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 TestCase inputs[] = { 95 TestCase inputs[] = {
96 // HTTP -> HTTP: Same Origin 96 // HTTP -> HTTP: Same Origin
97 {kReferrerPolicyAlways, kInsecureURLA, kInsecureURLA, kInsecureURLA}, 97 {kReferrerPolicyAlways, kInsecureURLA, kInsecureURLA, kInsecureURLA},
98 {kReferrerPolicyDefault, kInsecureURLA, kInsecureURLA, kInsecureURLA}, 98 {kReferrerPolicyDefault, kInsecureURLA, kInsecureURLA, kInsecureURLA},
99 {kReferrerPolicyNoReferrerWhenDowngrade, kInsecureURLA, kInsecureURLA, 99 {kReferrerPolicyNoReferrerWhenDowngrade, kInsecureURLA, kInsecureURLA,
100 kInsecureURLA}, 100 kInsecureURLA},
101 {kReferrerPolicyNever, kInsecureURLA, kInsecureURLA, 0}, 101 {kReferrerPolicyNever, kInsecureURLA, kInsecureURLA, 0},
102 {kReferrerPolicyOrigin, kInsecureURLA, kInsecureURLA, kInsecureOriginA}, 102 {kReferrerPolicyOrigin, kInsecureURLA, kInsecureURLA, kInsecureOriginA},
103 {kReferrerPolicyOriginWhenCrossOrigin, kInsecureURLA, kInsecureURLA, 103 {kReferrerPolicyOriginWhenCrossOrigin, kInsecureURLA, kInsecureURLA,
104 kInsecureURLA}, 104 kInsecureURLA},
105 {kReferrerPolicySameOrigin, kInsecureURLA, kInsecureURLA, kInsecureURLA},
106 {kReferrerPolicyStrictOrigin, kInsecureURLA, kInsecureURLA,
107 kInsecureOriginA},
108 {kReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin,
109 kInsecureURLA, kInsecureURLA, kInsecureURLA},
105 110
106 // HTTP -> HTTP: Cross Origin 111 // HTTP -> HTTP: Cross Origin
107 {kReferrerPolicyAlways, kInsecureURLA, kInsecureURLB, kInsecureURLA}, 112 {kReferrerPolicyAlways, kInsecureURLA, kInsecureURLB, kInsecureURLA},
108 {kReferrerPolicyDefault, kInsecureURLA, kInsecureURLB, kInsecureURLA}, 113 {kReferrerPolicyDefault, kInsecureURLA, kInsecureURLB, kInsecureURLA},
109 {kReferrerPolicyNoReferrerWhenDowngrade, kInsecureURLA, kInsecureURLB, 114 {kReferrerPolicyNoReferrerWhenDowngrade, kInsecureURLA, kInsecureURLB,
110 kInsecureURLA}, 115 kInsecureURLA},
111 {kReferrerPolicyNever, kInsecureURLA, kInsecureURLB, 0}, 116 {kReferrerPolicyNever, kInsecureURLA, kInsecureURLB, 0},
112 {kReferrerPolicyOrigin, kInsecureURLA, kInsecureURLB, kInsecureOriginA}, 117 {kReferrerPolicyOrigin, kInsecureURLA, kInsecureURLB, kInsecureOriginA},
113 {kReferrerPolicyOriginWhenCrossOrigin, kInsecureURLA, kInsecureURLB, 118 {kReferrerPolicyOriginWhenCrossOrigin, kInsecureURLA, kInsecureURLB,
114 kInsecureOriginA}, 119 kInsecureOriginA},
120 {kReferrerPolicySameOrigin, kInsecureURLA, kInsecureURLB, 0},
121 {kReferrerPolicyStrictOrigin, kInsecureURLA, kInsecureURLB,
122 kInsecureOriginA},
123 {kReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin,
124 kInsecureURLA, kInsecureURLB, kInsecureOriginA},
115 125
116 // HTTPS -> HTTPS: Same Origin 126 // HTTPS -> HTTPS: Same Origin
117 {kReferrerPolicyAlways, kSecureURLA, kSecureURLA, kSecureURLA}, 127 {kReferrerPolicyAlways, kSecureURLA, kSecureURLA, kSecureURLA},
118 {kReferrerPolicyDefault, kSecureURLA, kSecureURLA, kSecureURLA}, 128 {kReferrerPolicyDefault, kSecureURLA, kSecureURLA, kSecureURLA},
119 {kReferrerPolicyNoReferrerWhenDowngrade, kSecureURLA, kSecureURLA, 129 {kReferrerPolicyNoReferrerWhenDowngrade, kSecureURLA, kSecureURLA,
120 kSecureURLA}, 130 kSecureURLA},
121 {kReferrerPolicyNever, kSecureURLA, kSecureURLA, 0}, 131 {kReferrerPolicyNever, kSecureURLA, kSecureURLA, 0},
122 {kReferrerPolicyOrigin, kSecureURLA, kSecureURLA, kSecureOriginA}, 132 {kReferrerPolicyOrigin, kSecureURLA, kSecureURLA, kSecureOriginA},
123 {kReferrerPolicyOriginWhenCrossOrigin, kSecureURLA, kSecureURLA, 133 {kReferrerPolicyOriginWhenCrossOrigin, kSecureURLA, kSecureURLA,
124 kSecureURLA}, 134 kSecureURLA},
135 {kReferrerPolicySameOrigin, kSecureURLA, kSecureURLA, kSecureURLA},
136 {kReferrerPolicyStrictOrigin, kSecureURLA, kSecureURLA, kSecureOriginA},
137 {kReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin, kSecureURLA,
138 kSecureURLA, kSecureURLA},
125 139
126 // HTTPS -> HTTPS: Cross Origin 140 // HTTPS -> HTTPS: Cross Origin
127 {kReferrerPolicyAlways, kSecureURLA, kSecureURLB, kSecureURLA}, 141 {kReferrerPolicyAlways, kSecureURLA, kSecureURLB, kSecureURLA},
128 {kReferrerPolicyDefault, kSecureURLA, kSecureURLB, kSecureURLA}, 142 {kReferrerPolicyDefault, kSecureURLA, kSecureURLB, kSecureURLA},
129 {kReferrerPolicyNoReferrerWhenDowngrade, kSecureURLA, kSecureURLB, 143 {kReferrerPolicyNoReferrerWhenDowngrade, kSecureURLA, kSecureURLB,
130 kSecureURLA}, 144 kSecureURLA},
131 {kReferrerPolicyNever, kSecureURLA, kSecureURLB, 0}, 145 {kReferrerPolicyNever, kSecureURLA, kSecureURLB, 0},
132 {kReferrerPolicyOrigin, kSecureURLA, kSecureURLB, kSecureOriginA}, 146 {kReferrerPolicyOrigin, kSecureURLA, kSecureURLB, kSecureOriginA},
133 {kReferrerPolicyOriginWhenCrossOrigin, kSecureURLA, kSecureURLB, 147 {kReferrerPolicyOriginWhenCrossOrigin, kSecureURLA, kSecureURLB,
134 kSecureOriginA}, 148 kSecureOriginA},
149 {kReferrerPolicySameOrigin, kSecureURLA, kSecureURLB, 0},
150 {kReferrerPolicyStrictOrigin, kSecureURLA, kSecureURLB, kSecureOriginA},
151 {kReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin, kSecureURLA,
152 kSecureURLB, kSecureOriginA},
135 153
136 // HTTP -> HTTPS 154 // HTTP -> HTTPS
137 {kReferrerPolicyAlways, kInsecureURLA, kSecureURLB, kInsecureURLA}, 155 {kReferrerPolicyAlways, kInsecureURLA, kSecureURLB, kInsecureURLA},
138 {kReferrerPolicyDefault, kInsecureURLA, kSecureURLB, kInsecureURLA}, 156 {kReferrerPolicyDefault, kInsecureURLA, kSecureURLB, kInsecureURLA},
139 {kReferrerPolicyNoReferrerWhenDowngrade, kInsecureURLA, kSecureURLB, 157 {kReferrerPolicyNoReferrerWhenDowngrade, kInsecureURLA, kSecureURLB,
140 kInsecureURLA}, 158 kInsecureURLA},
141 {kReferrerPolicyNever, kInsecureURLA, kSecureURLB, 0}, 159 {kReferrerPolicyNever, kInsecureURLA, kSecureURLB, 0},
142 {kReferrerPolicyOrigin, kInsecureURLA, kSecureURLB, kInsecureOriginA}, 160 {kReferrerPolicyOrigin, kInsecureURLA, kSecureURLB, kInsecureOriginA},
143 {kReferrerPolicyOriginWhenCrossOrigin, kInsecureURLA, kSecureURLB, 161 {kReferrerPolicyOriginWhenCrossOrigin, kInsecureURLA, kSecureURLB,
144 kInsecureOriginA}, 162 kInsecureOriginA},
163 {kReferrerPolicySameOrigin, kInsecureURLA, kSecureURLB, 0},
164 {kReferrerPolicyStrictOrigin, kInsecureURLA, kSecureURLB,
165 kInsecureOriginA},
166 {kReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin,
167 kInsecureURLA, kSecureURLB, kInsecureOriginA},
145 168
146 // HTTPS -> HTTP 169 // HTTPS -> HTTP
147 {kReferrerPolicyAlways, kSecureURLA, kInsecureURLB, kSecureURLA}, 170 {kReferrerPolicyAlways, kSecureURLA, kInsecureURLB, kSecureURLA},
148 {kReferrerPolicyDefault, kSecureURLA, kInsecureURLB, 0}, 171 {kReferrerPolicyDefault, kSecureURLA, kInsecureURLB, 0},
149 {kReferrerPolicyNoReferrerWhenDowngrade, kSecureURLA, kInsecureURLB, 0}, 172 {kReferrerPolicyNoReferrerWhenDowngrade, kSecureURLA, kInsecureURLB, 0},
150 {kReferrerPolicyNever, kSecureURLA, kInsecureURLB, 0}, 173 {kReferrerPolicyNever, kSecureURLA, kInsecureURLB, 0},
151 {kReferrerPolicyOrigin, kSecureURLA, kInsecureURLB, kSecureOriginA}, 174 {kReferrerPolicyOrigin, kSecureURLA, kInsecureURLB, kSecureOriginA},
152 {kReferrerPolicyOriginWhenCrossOrigin, kSecureURLA, kSecureURLB, 175 {kReferrerPolicyOriginWhenCrossOrigin, kSecureURLA, kSecureURLB,
153 kSecureOriginA}, 176 kSecureOriginA},
177 {kReferrerPolicySameOrigin, kSecureURLA, kInsecureURLB, 0},
178 {kReferrerPolicyStrictOrigin, kSecureURLA, kInsecureURLB, 0},
179 {kReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin, kSecureURLA,
180 kInsecureURLB, 0},
154 181
155 // blob and filesystem URL handling 182 // blob and filesystem URL handling
156 {kReferrerPolicyAlways, kInsecureURLA, kBlobURL, 0}, 183 {kReferrerPolicyAlways, kInsecureURLA, kBlobURL, 0},
157 {kReferrerPolicyAlways, kBlobURL, kInsecureURLA, 0}, 184 {kReferrerPolicyAlways, kBlobURL, kInsecureURLA, 0},
158 {kReferrerPolicyAlways, kInsecureURLA, kFilesystemURL, 0}, 185 {kReferrerPolicyAlways, kInsecureURLA, kFilesystemURL, 0},
159 {kReferrerPolicyAlways, kFilesystemURL, kInsecureURLA, 0}, 186 {kReferrerPolicyAlways, kFilesystemURL, kInsecureURLA, 0},
160 }; 187 };
161 188
162 for (TestCase test : inputs) { 189 for (TestCase test : inputs) {
163 KURL destination(kParsedURLString, test.destination); 190 KURL destination(kParsedURLString, test.destination);
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 244
218 EXPECT_FALSE(origin1->IsPotentiallyTrustworthy()); 245 EXPECT_FALSE(origin1->IsPotentiallyTrustworthy());
219 EXPECT_FALSE(origin2->IsPotentiallyTrustworthy()); 246 EXPECT_FALSE(origin2->IsPotentiallyTrustworthy());
220 SecurityPolicy::AddOriginTrustworthyWhiteList(origin1); 247 SecurityPolicy::AddOriginTrustworthyWhiteList(origin1);
221 EXPECT_TRUE(origin1->IsPotentiallyTrustworthy()); 248 EXPECT_TRUE(origin1->IsPotentiallyTrustworthy());
222 EXPECT_TRUE(origin2->IsPotentiallyTrustworthy()); 249 EXPECT_TRUE(origin2->IsPotentiallyTrustworthy());
223 } 250 }
224 } 251 }
225 252
226 } // namespace blink 253 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp ('k') | third_party/WebKit/Source/web/AssertMatchingEnums.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698