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

Unified Diff: components/subresource_filter/core/common/test_ruleset_creator.cc

Issue 2835233002: Fix integration tests in src/chrome and src/extensions so that we can turn on IO thread checks wi... (Closed)
Patch Set: ready for review 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 side-by-side diff with in-line comments
Download patch
Index: components/subresource_filter/core/common/test_ruleset_creator.cc
diff --git a/components/subresource_filter/core/common/test_ruleset_creator.cc b/components/subresource_filter/core/common/test_ruleset_creator.cc
index 408a9845353bd54169d0c3b7eecb79194494d173..939dff3085e960703ac18d4d6664f251a8f67ee6 100644
--- a/components/subresource_filter/core/common/test_ruleset_creator.cc
+++ b/components/subresource_filter/core/common/test_ruleset_creator.cc
@@ -8,7 +8,9 @@
#include "base/files/file_util.h"
#include "base/logging.h"
+#include "base/memory/ptr_util.h"
#include "base/strings/string_number_conversions.h"
+#include "base/threading/thread_restrictions.h"
#include "components/subresource_filter/core/common/indexed_ruleset.h"
#include "components/subresource_filter/core/common/proto/rules.pb.h"
#include "components/subresource_filter/core/common/test_ruleset_utils.h"
@@ -25,6 +27,7 @@ static_assert(CHAR_BIT == 8, "Assumed char was 8 bits.");
void WriteRulesetContents(const std::vector<uint8_t>& contents,
base::FilePath path) {
+ base::ThreadRestrictions::ScopedAllowIO allow_io;
int ruleset_size_as_int = base::checked_cast<int>(contents.size());
int num_bytes_written =
base::WriteFile(path, reinterpret_cast<const char*>(contents.data()),
@@ -65,6 +68,7 @@ TestRuleset::~TestRuleset() = default;
// static
base::File TestRuleset::Open(const TestRuleset& ruleset) {
+ base::ThreadRestrictions::ScopedAllowIO allow_io;
base::File file;
file.Initialize(ruleset.path, base::File::FLAG_OPEN | base::File::FLAG_READ |
base::File::FLAG_SHARE_DELETE);
@@ -105,8 +109,13 @@ TestRulesetPair::~TestRulesetPair() = default;
// TestRulesetCreator ----------------------------------------------------------
-TestRulesetCreator::TestRulesetCreator() = default;
-TestRulesetCreator::~TestRulesetCreator() = default;
+TestRulesetCreator::TestRulesetCreator()
+ : scoped_temp_dir_(base::MakeUnique<base::ScopedTempDir>()) {}
+
+TestRulesetCreator::~TestRulesetCreator() {
+ base::ThreadRestrictions::ScopedAllowIO allow_io;
+ scoped_temp_dir_.reset();
+}
void TestRulesetCreator::CreateRulesetToDisallowURLsWithPathSuffix(
base::StringPiece suffix,
@@ -161,9 +170,10 @@ void TestRulesetCreator::CreateUnindexedRulesetWithRules(
void TestRulesetCreator::GetUniqueTemporaryPath(base::FilePath* path) {
DCHECK(path);
- ASSERT_TRUE(scoped_temp_dir_.IsValid() ||
- scoped_temp_dir_.CreateUniqueTempDir());
- *path = scoped_temp_dir_.GetPath().AppendASCII(
+ base::ThreadRestrictions::ScopedAllowIO allow_io;
+ ASSERT_TRUE(scoped_temp_dir_->IsValid() ||
+ scoped_temp_dir_->CreateUniqueTempDir());
+ *path = scoped_temp_dir_->GetPath().AppendASCII(
base::IntToString(next_unique_file_suffix++));
}

Powered by Google App Engine
This is Rietveld 408576698