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

Side by Side Diff: extensions/browser/content_hash_fetcher_unittest.cc

Issue 2805443005: Disable flaky ContentHashFetcherTest.MissingVerifiedContents on Linux. (Closed)
Patch Set: Created 3 years, 8 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <memory> 5 #include <memory>
6 6
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/callback_helpers.h" 8 #include "base/callback_helpers.h"
9 #include "base/files/file_path.h" 9 #include "base/files/file_path.h"
10 #include "base/files/file_util.h" 10 #include "base/files/file_util.h"
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 interceptor_->SetResponse(url, response_path); 179 interceptor_->SetResponse(url, response_path);
180 } 180 }
181 181
182 protected: 182 protected:
183 std::unique_ptr<content::TestBrowserThreadBundle> browser_threads_; 183 std::unique_ptr<content::TestBrowserThreadBundle> browser_threads_;
184 std::unique_ptr<net::TestURLRequestInterceptor> interceptor_; 184 std::unique_ptr<net::TestURLRequestInterceptor> interceptor_;
185 scoped_refptr<net::TestURLRequestContextGetter> request_context_; 185 scoped_refptr<net::TestURLRequestContextGetter> request_context_;
186 base::ScopedTempDir temp_dir_; 186 base::ScopedTempDir temp_dir_;
187 }; 187 };
188 188
189 // Flaky on Linux and ChromeOS. https://crbug.com/702300
190 #if defined(OS_LINUX) || defined(OS_CHROMEOS)
191 #define MAYBE_MissingVerifiedContents DISABLED_MissingVerifiedContents
192 #else
193 #define MAYBE_MissingVerifiedContents MissingVerifiedContents
194 #endif
189 // This tests our ability to successfully fetch, parse, and validate a missing 195 // This tests our ability to successfully fetch, parse, and validate a missing
190 // verified_contents.json file for an extension. 196 // verified_contents.json file for an extension.
191 TEST_F(ContentHashFetcherTest, MissingVerifiedContents) { 197 TEST_F(ContentHashFetcherTest, MAYBE_MissingVerifiedContents) {
192 // We unzip the extension source to a temp directory to simulate it being 198 // We unzip the extension source to a temp directory to simulate it being
193 // installed there, because the ContentHashFetcher will create the _metadata/ 199 // installed there, because the ContentHashFetcher will create the _metadata/
194 // directory within the extension install dir and write the fetched 200 // directory within the extension install dir and write the fetched
195 // verified_contents.json file there. 201 // verified_contents.json file there.
196 base::FilePath test_dir_base = GetTestPath( 202 base::FilePath test_dir_base = GetTestPath(
197 base::FilePath(FILE_PATH_LITERAL("missing_verified_contents"))); 203 base::FilePath(FILE_PATH_LITERAL("missing_verified_contents")));
198 scoped_refptr<Extension> extension = 204 scoped_refptr<Extension> extension =
199 UnzipToTempDirAndLoad(test_dir_base.AppendASCII("source.zip")); 205 UnzipToTempDirAndLoad(test_dir_base.AppendASCII("source.zip"));
200 206
201 // Make sure there isn't already a verified_contents.json file there. 207 // Make sure there isn't already a verified_contents.json file there.
(...skipping 18 matching lines...) Expand all
220 EXPECT_TRUE(result->success); 226 EXPECT_TRUE(result->success);
221 EXPECT_TRUE(result->force); 227 EXPECT_TRUE(result->force);
222 EXPECT_TRUE(result->mismatch_paths.empty()); 228 EXPECT_TRUE(result->mismatch_paths.empty());
223 229
224 // Make sure the verified_contents.json file was written into the extension's 230 // Make sure the verified_contents.json file was written into the extension's
225 // install dir. 231 // install dir.
226 EXPECT_TRUE( 232 EXPECT_TRUE(
227 base::PathExists(file_util::GetVerifiedContentsPath(extension->path()))); 233 base::PathExists(file_util::GetVerifiedContentsPath(extension->path())));
228 } 234 }
229 235
230 // Similar to MissingVerifiedContents, but tests the case where the extension 236 // Flaky on Linux and ChromeOS. https://crbug.com/702300
231 // actually has corruption.
232 // Flaky on Linux and ChromeOS. crbug.com/
233 #if defined(OS_LINUX) || defined(OS_CHROMEOS) 237 #if defined(OS_LINUX) || defined(OS_CHROMEOS)
234 #define MAYBE_MissingVerifiedContentsAndCorrupt \ 238 #define MAYBE_MissingVerifiedContentsAndCorrupt \
235 DISABLED_MissingVerifiedContentsAndCorrupt 239 DISABLED_MissingVerifiedContentsAndCorrupt
236 #else 240 #else
237 #define MAYBE_MissingVerifiedContentsAndCorrupt \ 241 #define MAYBE_MissingVerifiedContentsAndCorrupt \
238 MissingVerifiedContentsAndCorrupt 242 MissingVerifiedContentsAndCorrupt
239 #endif 243 #endif
244 // Similar to MissingVerifiedContents, but tests the case where the extension
245 // actually has corruption.
240 TEST_F(ContentHashFetcherTest, MAYBE_MissingVerifiedContentsAndCorrupt) { 246 TEST_F(ContentHashFetcherTest, MAYBE_MissingVerifiedContentsAndCorrupt) {
241 base::FilePath test_dir_base = 247 base::FilePath test_dir_base =
242 GetTestPath(base::FilePath()).AppendASCII("missing_verified_contents"); 248 GetTestPath(base::FilePath()).AppendASCII("missing_verified_contents");
243 scoped_refptr<Extension> extension = 249 scoped_refptr<Extension> extension =
244 UnzipToTempDirAndLoad(test_dir_base.AppendASCII("source.zip")); 250 UnzipToTempDirAndLoad(test_dir_base.AppendASCII("source.zip"));
245 251
246 // Tamper with a file in the extension. 252 // Tamper with a file in the extension.
247 base::FilePath script_path = extension->path().AppendASCII("script.js"); 253 base::FilePath script_path = extension->path().AppendASCII("script.js");
248 std::string addition = "//hello world"; 254 std::string addition = "//hello world";
249 ASSERT_TRUE( 255 ASSERT_TRUE(
(...skipping 18 matching lines...) Expand all
268 EXPECT_TRUE( 274 EXPECT_TRUE(
269 base::ContainsKey(result->mismatch_paths, script_path.BaseName())); 275 base::ContainsKey(result->mismatch_paths, script_path.BaseName()));
270 276
271 // Make sure the verified_contents.json file was written into the extension's 277 // Make sure the verified_contents.json file was written into the extension's
272 // install dir. 278 // install dir.
273 EXPECT_TRUE( 279 EXPECT_TRUE(
274 base::PathExists(file_util::GetVerifiedContentsPath(extension->path()))); 280 base::PathExists(file_util::GetVerifiedContentsPath(extension->path())));
275 } 281 }
276 282
277 } // namespace extensions 283 } // namespace extensions
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698