| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "extensions/common/matcher/url_matcher.h" | 5 #include "extensions/common/matcher/url_matcher.h" |
| 6 | 6 |
| 7 #include "base/strings/string_util.h" | 7 #include "base/strings/string_util.h" |
| 8 #include "googleurl/src/gurl.h" | 8 #include "googleurl/src/gurl.h" |
| 9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 | 10 |
| (...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 442 std::set<StringPattern::ID> matching_patterns; | 442 std::set<StringPattern::ID> matching_patterns; |
| 443 matching_patterns.insert(m1.string_pattern()->id()); | 443 matching_patterns.insert(m1.string_pattern()->id()); |
| 444 EXPECT_FALSE(condition_set->IsMatch(matching_patterns, url1)); | 444 EXPECT_FALSE(condition_set->IsMatch(matching_patterns, url1)); |
| 445 | 445 |
| 446 matching_patterns.insert(m2.string_pattern()->id()); | 446 matching_patterns.insert(m2.string_pattern()->id()); |
| 447 EXPECT_TRUE(condition_set->IsMatch(matching_patterns, url1)); | 447 EXPECT_TRUE(condition_set->IsMatch(matching_patterns, url1)); |
| 448 EXPECT_FALSE(condition_set->IsMatch(matching_patterns, url2)); | 448 EXPECT_FALSE(condition_set->IsMatch(matching_patterns, url2)); |
| 449 | 449 |
| 450 // Test scheme filters. | 450 // Test scheme filters. |
| 451 scoped_refptr<URLMatcherConditionSet> condition_set2( | 451 scoped_refptr<URLMatcherConditionSet> condition_set2( |
| 452 new URLMatcherConditionSet(1, conditions, | 452 new URLMatcherConditionSet(1, |
| 453 scoped_ptr<URLMatcherSchemeFilter>( | 453 conditions, |
| 454 new URLMatcherSchemeFilter("https")), | 454 scoped_ptr<URLMatcherSchemeFilter>( |
| 455 scoped_ptr<URLMatcherPortFilter>(NULL))); | 455 new URLMatcherSchemeFilter("https")), |
| 456 scoped_ptr<URLMatcherPortFilter>())); |
| 456 EXPECT_FALSE(condition_set2->IsMatch(matching_patterns, url1)); | 457 EXPECT_FALSE(condition_set2->IsMatch(matching_patterns, url1)); |
| 457 scoped_refptr<URLMatcherConditionSet> condition_set3( | 458 scoped_refptr<URLMatcherConditionSet> condition_set3( |
| 458 new URLMatcherConditionSet(1, conditions, | 459 new URLMatcherConditionSet(1, |
| 459 scoped_ptr<URLMatcherSchemeFilter>( | 460 conditions, |
| 460 new URLMatcherSchemeFilter("http")), | 461 scoped_ptr<URLMatcherSchemeFilter>( |
| 461 scoped_ptr<URLMatcherPortFilter>(NULL))); | 462 new URLMatcherSchemeFilter("http")), |
| 463 scoped_ptr<URLMatcherPortFilter>())); |
| 462 EXPECT_TRUE(condition_set3->IsMatch(matching_patterns, url1)); | 464 EXPECT_TRUE(condition_set3->IsMatch(matching_patterns, url1)); |
| 463 | 465 |
| 464 // Test port filters. | 466 // Test port filters. |
| 465 std::vector<URLMatcherPortFilter::Range> ranges; | 467 std::vector<URLMatcherPortFilter::Range> ranges; |
| 466 ranges.push_back(URLMatcherPortFilter::CreateRange(80)); | 468 ranges.push_back(URLMatcherPortFilter::CreateRange(80)); |
| 467 scoped_ptr<URLMatcherPortFilter> filter(new URLMatcherPortFilter(ranges)); | 469 scoped_ptr<URLMatcherPortFilter> filter(new URLMatcherPortFilter(ranges)); |
| 468 scoped_refptr<URLMatcherConditionSet> condition_set4( | 470 scoped_refptr<URLMatcherConditionSet> condition_set4( |
| 469 new URLMatcherConditionSet(1, conditions, | 471 new URLMatcherConditionSet( |
| 470 scoped_ptr<URLMatcherSchemeFilter>(NULL), filter.Pass())); | 472 1, conditions, scoped_ptr<URLMatcherSchemeFilter>(), filter.Pass())); |
| 471 EXPECT_TRUE(condition_set4->IsMatch(matching_patterns, url1)); | 473 EXPECT_TRUE(condition_set4->IsMatch(matching_patterns, url1)); |
| 472 EXPECT_TRUE(condition_set4->IsMatch(matching_patterns, url3)); | 474 EXPECT_TRUE(condition_set4->IsMatch(matching_patterns, url3)); |
| 473 EXPECT_FALSE(condition_set4->IsMatch(matching_patterns, url4)); | 475 EXPECT_FALSE(condition_set4->IsMatch(matching_patterns, url4)); |
| 474 | 476 |
| 475 // Test regex patterns. | 477 // Test regex patterns. |
| 476 matching_patterns.clear(); | 478 matching_patterns.clear(); |
| 477 URLMatcherCondition r1 = factory.CreateURLMatchesCondition("/fo?oo"); | 479 URLMatcherCondition r1 = factory.CreateURLMatchesCondition("/fo?oo"); |
| 478 std::set<URLMatcherCondition> regex_conditions; | 480 std::set<URLMatcherCondition> regex_conditions; |
| 479 regex_conditions.insert(r1); | 481 regex_conditions.insert(r1); |
| 480 scoped_refptr<URLMatcherConditionSet> condition_set5( | 482 scoped_refptr<URLMatcherConditionSet> condition_set5( |
| (...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 671 conditions.insert(factory->CreateOriginAndPathMatchesCondition("val")); | 673 conditions.insert(factory->CreateOriginAndPathMatchesCondition("val")); |
| 672 const int kConditionSetId = 1; | 674 const int kConditionSetId = 1; |
| 673 URLMatcherConditionSet::Vector insert; | 675 URLMatcherConditionSet::Vector insert; |
| 674 insert.push_back(make_scoped_refptr( | 676 insert.push_back(make_scoped_refptr( |
| 675 new URLMatcherConditionSet(kConditionSetId, conditions))); | 677 new URLMatcherConditionSet(kConditionSetId, conditions))); |
| 676 matcher.AddConditionSets(insert); | 678 matcher.AddConditionSets(insert); |
| 677 EXPECT_EQ(0u, matcher.MatchURL(url).size()); | 679 EXPECT_EQ(0u, matcher.MatchURL(url).size()); |
| 678 } | 680 } |
| 679 | 681 |
| 680 } // namespace extensions | 682 } // namespace extensions |
| OLD | NEW |