Index: test/Prefs.cpp |
diff --git a/test/Prefs.cpp b/test/Prefs.cpp |
index bbdd2e0721ff9cc21e20e702837d48db275b2103..545ab395a57dccd5be9c19029c40f3c9a5783ccf 100644 |
--- a/test/Prefs.cpp |
+++ b/test/Prefs.cpp |
@@ -26,9 +26,12 @@ namespace |
{ |
class TestFileSystem : public LazyFileSystem |
{ |
+ IOBuffer& prefsContents; |
public: |
- IOBuffer prefsContents; |
- |
+ explicit TestFileSystem(IOBuffer& prefsContent) |
+ : prefsContents(prefsContent) |
+ { |
+ } |
void Read(const std::string& fileName, const ReadCallback& callback) const override |
{ |
scheduler([this, fileName, callback] |
@@ -74,19 +77,19 @@ namespace |
class PrefsTest : public BaseJsTest |
{ |
+ LazyFileSystem* fileSystem; |
protected: |
- std::shared_ptr<TestFileSystem> fileSystem; |
+ IFileSystem::IOBuffer prefsContent; |
void SetUp() |
{ |
- fileSystem = std::make_shared<TestFileSystem>(); |
ResetPlatform(); |
} |
void ResetPlatform() |
{ |
ThrowingPlatformCreationParameters platformParams; |
- platformParams.fileSystem = fileSystem; |
+ platformParams.fileSystem.reset(fileSystem = new TestFileSystem(prefsContent)); |
platformParams.webRequest.reset(new NoopWebRequest()); |
platformParams.logSystem.reset(new LazyLogSystem()); |
platformParams.timer.reset(new NoopTimer()); |
@@ -130,7 +133,7 @@ TEST_F(PrefsTest, PrefsPersist) |
filterEngine.SetPref("patternsbackupinterval", GetJsEngine().NewValue(48)); |
filterEngine.SetPref("subscriptions_autoupdate", GetJsEngine().NewValue(false)); |
} |
- ASSERT_FALSE(fileSystem->prefsContents.empty()); |
+ ASSERT_FALSE(prefsContent.empty()); |
{ |
ResetPlatform(); |
@@ -144,7 +147,7 @@ TEST_F(PrefsTest, UnknownPrefs) |
{ |
using IOBuffer = AdblockPlus::IFileSystem::IOBuffer; |
std::string content = "{\"foobar\":2, \"patternsbackupinterval\": 12}"; |
- fileSystem->prefsContents = IOBuffer(content.cbegin(), content.cend()); |
+ prefsContent = IOBuffer(content.cbegin(), content.cend()); |
auto& filterEngine = CreateFilterEngine(); |
ASSERT_TRUE(filterEngine.GetPref("foobar").IsUndefined()); |
ASSERT_EQ(12, filterEngine.GetPref("patternsbackupinterval").AsInt()); |
@@ -154,7 +157,7 @@ TEST_F(PrefsTest, SyntaxFailure) |
{ |
using IOBuffer = AdblockPlus::IFileSystem::IOBuffer; |
std::string content = "{\"patternsbackupinterval\": 6, \"foo\"}"; |
- fileSystem->prefsContents = IOBuffer(content.cbegin(), content.cend()); |
+ prefsContent = IOBuffer(content.cbegin(), content.cend()); |
ASSERT_EQ(24, CreateFilterEngine().GetPref("patternsbackupinterval").AsInt()); |
} |
@@ -202,7 +205,7 @@ TEST_F(PrefsTest, PrefsPersistWhenPreconfigured) |
ASSERT_TRUE(filterEngine.GetPref("suppress_first_run_page").AsBool()); |
filterEngine.SetPref("suppress_first_run_page", GetJsEngine().NewValue(false)); |
} |
- ASSERT_FALSE(fileSystem->prefsContents.empty()); |
+ ASSERT_FALSE(prefsContent.empty()); |
{ |
ResetPlatform(); |