[go: nahoru, domu]

blob: 33fa08e2218b6b929b405bd512bef7d98c5396dc [file] [log] [blame]
// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "third_party/blink/renderer/core/loader/url_matcher.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace blink {
TEST(UrlMatcherTest, SingleDomain) {
UrlMatcher matcher("https://test.com");
EXPECT_TRUE(matcher.Match(KURL("https://test.com/script.js")));
EXPECT_FALSE(matcher.Match(KURL("http://test.com/script.js")));
EXPECT_FALSE(matcher.Match(KURL("http://another.test.com/script.js")));
}
TEST(UrlMatcherTest, MultipleDomains) {
UrlMatcher matcher("https://test.com,https://another.test.com");
KURL url = KURL("https://test.com/script.js");
EXPECT_TRUE(matcher.Match(url));
}
TEST(UrlMatcherTest, WithSeparatorForPathStrings) {
UrlMatcher matcher("https://test.com|/foo");
EXPECT_TRUE(matcher.Match(KURL("https://test.com/foo")));
EXPECT_FALSE(matcher.Match(KURL("https://test.com/bar")));
EXPECT_FALSE(matcher.Match(KURL("https://test.com?foo")));
}
TEST(UrlMatcherTest, WithSeparatorForQueryParams) {
UrlMatcher matcher("https://test.com|foo=bar");
EXPECT_FALSE(matcher.Match(KURL("https://test.com/foo")));
EXPECT_FALSE(matcher.Match(KURL("https://test.com/foo/bar")));
EXPECT_TRUE(matcher.Match(KURL("https://test.com?foo=bar")));
EXPECT_TRUE(matcher.Match(KURL("https://test.com?a=b&foo=bar")));
}
} // namespace blink