diff options
Diffstat (limited to 'toolkit/components/url-classifier/tests/gtest/TestLookupCacheV4.cpp')
-rw-r--r-- | toolkit/components/url-classifier/tests/gtest/TestLookupCacheV4.cpp | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/toolkit/components/url-classifier/tests/gtest/TestLookupCacheV4.cpp b/toolkit/components/url-classifier/tests/gtest/TestLookupCacheV4.cpp deleted file mode 100644 index 00525f704..000000000 --- a/toolkit/components/url-classifier/tests/gtest/TestLookupCacheV4.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "LookupCacheV4.h" -#include "Common.h" - -#define GTEST_SAFEBROWSING_DIR NS_LITERAL_CSTRING("safebrowsing") -#define GTEST_TABLE NS_LITERAL_CSTRING("gtest-malware-proto") - -typedef nsCString _Fragment; -typedef nsTArray<nsCString> _PrefixArray; - -// Generate a hash prefix from string -static const nsCString -GeneratePrefix(const _Fragment& aFragment, uint8_t aLength) -{ - Completion complete; - nsCOMPtr<nsICryptoHash> cryptoHash = do_CreateInstance(NS_CRYPTO_HASH_CONTRACTID); - complete.FromPlaintext(aFragment, cryptoHash); - - nsCString hash; - hash.Assign((const char *)complete.buf, aLength); - return hash; -} - -static UniquePtr<LookupCacheV4> -SetupLookupCacheV4(const _PrefixArray& prefixArray) -{ - nsCOMPtr<nsIFile> file; - NS_GetSpecialDirectory(NS_APP_USER_PROFILE_50_DIR, getter_AddRefs(file)); - - file->AppendNative(GTEST_SAFEBROWSING_DIR); - - UniquePtr<LookupCacheV4> cache = MakeUnique<LookupCacheV4>(GTEST_TABLE, EmptyCString(), file); - nsresult rv = cache->Init(); - EXPECT_EQ(rv, NS_OK); - - PrefixStringMap map; - PrefixArrayToPrefixStringMap(prefixArray, map); - rv = cache->Build(map); - EXPECT_EQ(rv, NS_OK); - - return Move(cache); -} - -void -TestHasPrefix(const _Fragment& aFragment, bool aExpectedHas, bool aExpectedComplete) -{ - _PrefixArray array = { GeneratePrefix(_Fragment("bravo.com/"), 32), - GeneratePrefix(_Fragment("browsing.com/"), 8), - GeneratePrefix(_Fragment("gound.com/"), 5), - GeneratePrefix(_Fragment("small.com/"), 4) - }; - - RunTestInNewThread([&] () -> void { - UniquePtr<LookupCache> cache = SetupLookupCacheV4(array); - - Completion lookupHash; - nsCOMPtr<nsICryptoHash> cryptoHash = do_CreateInstance(NS_CRYPTO_HASH_CONTRACTID); - lookupHash.FromPlaintext(aFragment, cryptoHash); - - bool has, complete; - nsresult rv = cache->Has(lookupHash, &has, &complete); - - EXPECT_EQ(rv, NS_OK); - EXPECT_EQ(has, aExpectedHas); - EXPECT_EQ(complete, aExpectedComplete); - - cache->ClearAll(); - }); - -} - -TEST(LookupCacheV4, HasComplete) -{ - TestHasPrefix(_Fragment("bravo.com/"), true, true); -} - -TEST(LookupCacheV4, HasPrefix) -{ - TestHasPrefix(_Fragment("browsing.com/"), true, false); -} - -TEST(LookupCacheV4, Nomatch) -{ - TestHasPrefix(_Fragment("nomatch.com/"), false, false); -} |