Index: test/Prefs.cpp |
=================================================================== |
--- a/test/Prefs.cpp |
+++ b/test/Prefs.cpp |
@@ -24,34 +24,30 @@ |
namespace |
{ |
typedef std::shared_ptr<AdblockPlus::FilterEngine> FilterEnginePtr; |
class TestFileSystem : public LazyFileSystem |
{ |
public: |
- std::string prefsContents; |
+ IOBuffer prefsContents; |
- std::shared_ptr<std::istream> Read(const std::string& path) const |
+ IOBuffer Read(const std::string& path) const |
{ |
if (path == "prefs.json" && !prefsContents.empty()) |
- return std::shared_ptr<std::istream>(new std::istringstream(prefsContents)); |
+ return prefsContents; |
return LazyFileSystem::Read(path); |
} |
- void Write(const std::string& path, std::istream& content) |
+ void Write(const std::string& path, const IOBuffer& content) |
{ |
if (path == "prefs.json") |
- { |
- std::stringstream ss; |
- ss << content.rdbuf(); |
- prefsContents = ss.str(); |
- } |
+ prefsContents = content; |
else |
LazyFileSystem::Write(path, content); |
} |
StatResult Stat(const std::string& path) const |
{ |
if (path == "prefs.json") |
{ |
@@ -139,25 +135,29 @@ |
ASSERT_EQ("filters.ini", filterEngine->GetPref("patternsfile").AsString()); |
ASSERT_EQ(48, filterEngine->GetPref("patternsbackupinterval").AsInt()); |
ASSERT_FALSE(filterEngine->GetPref("subscriptions_autoupdate").AsBool()); |
} |
} |
TEST_F(PrefsTest, UnknownPrefs) |
{ |
- fileSystem->prefsContents = "{\"foobar\":2, \"patternsbackupinterval\": 12}"; |
+ using IOBuffer = AdblockPlus::FileSystem::IOBuffer; |
+ std::string content = "{\"foobar\":2, \"patternsbackupinterval\": 12}"; |
+ fileSystem->prefsContents = IOBuffer(content.cbegin(), content.cend()); |
auto filterEngine = CreateFilterEngine(); |
ASSERT_TRUE(filterEngine->GetPref("foobar").IsUndefined()); |
ASSERT_EQ(12, filterEngine->GetPref("patternsbackupinterval").AsInt()); |
} |
TEST_F(PrefsTest, SyntaxFailure) |
{ |
- fileSystem->prefsContents = "{\"patternsbackupinterval\": 6, \"foo\"}"; |
+ using IOBuffer = AdblockPlus::FileSystem::IOBuffer; |
+ std::string content = "{\"patternsbackupinterval\": 6, \"foo\"}"; |
+ fileSystem->prefsContents = IOBuffer(content.cbegin(), content.cend()); |
auto filterEngine = CreateFilterEngine(); |
ASSERT_EQ(24, filterEngine->GetPref("patternsbackupinterval").AsInt()); |
} |
TEST_F(PrefsTest, PreconfiguredPrefsPreconfigured) |
{ |
AdblockPlus::FilterEngine::Prefs preconfiguredPrefs; |