| 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 "chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_
registry.h" | 5 #include "chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_
registry.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 518 " ], \n" | 518 " ], \n" |
| 519 " \"actions\": [ \n" | 519 " \"actions\": [ \n" |
| 520 " { \n" | 520 " { \n" |
| 521 " \"instanceType\": \"declarativeWebRequest.IgnoreRules\", \n" | 521 " \"instanceType\": \"declarativeWebRequest.IgnoreRules\", \n" |
| 522 " \"hasTag\": \"ignore_tag\" \n" | 522 " \"hasTag\": \"ignore_tag\" \n" |
| 523 " } \n" | 523 " } \n" |
| 524 " ], \n" | 524 " ], \n" |
| 525 " \"priority\": 300 \n" | 525 " \"priority\": 300 \n" |
| 526 "} "; | 526 "} "; |
| 527 | 527 |
| 528 scoped_ptr<Value> value1(base::JSONReader::Read(kRule1)); | 528 scoped_ptr<base::Value> value1(base::JSONReader::Read(kRule1)); |
| 529 ASSERT_TRUE(value1.get()); | 529 ASSERT_TRUE(value1.get()); |
| 530 scoped_ptr<Value> value2(base::JSONReader::Read(kRule2)); | 530 scoped_ptr<base::Value> value2(base::JSONReader::Read(kRule2)); |
| 531 ASSERT_TRUE(value2.get()); | 531 ASSERT_TRUE(value2.get()); |
| 532 | 532 |
| 533 std::vector<linked_ptr<RulesRegistry::Rule> > rules; | 533 std::vector<linked_ptr<RulesRegistry::Rule> > rules; |
| 534 rules.push_back(make_linked_ptr(new RulesRegistry::Rule)); | 534 rules.push_back(make_linked_ptr(new RulesRegistry::Rule)); |
| 535 rules.push_back(make_linked_ptr(new RulesRegistry::Rule)); | 535 rules.push_back(make_linked_ptr(new RulesRegistry::Rule)); |
| 536 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value1, rules[0].get())); | 536 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value1, rules[0].get())); |
| 537 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value2, rules[1].get())); | 537 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value2, rules[1].get())); |
| 538 | 538 |
| 539 scoped_refptr<WebRequestRulesRegistry> registry( | 539 scoped_refptr<WebRequestRulesRegistry> registry( |
| 540 new TestWebRequestRulesRegistry(extension_info_map_)); | 540 new TestWebRequestRulesRegistry(extension_info_map_)); |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 682 " ], \n" | 682 " ], \n" |
| 683 " \"actions\": [ \n" | 683 " \"actions\": [ \n" |
| 684 " { \n" | 684 " { \n" |
| 685 " \"instanceType\": \"declarativeWebRequest.RedirectRequest\",\n" | 685 " \"instanceType\": \"declarativeWebRequest.RedirectRequest\",\n" |
| 686 " \"redirectUrl\": \"http://bar.com\" \n" | 686 " \"redirectUrl\": \"http://bar.com\" \n" |
| 687 " } \n" | 687 " } \n" |
| 688 " ], \n" | 688 " ], \n" |
| 689 " \"priority\": 200 \n" | 689 " \"priority\": 200 \n" |
| 690 "} "; | 690 "} "; |
| 691 | 691 |
| 692 scoped_ptr<Value> value(base::JSONReader::Read(kRule)); | 692 scoped_ptr<base::Value> value(base::JSONReader::Read(kRule)); |
| 693 ASSERT_TRUE(value); | 693 ASSERT_TRUE(value); |
| 694 | 694 |
| 695 RulesRegistry::Rule rule; | 695 RulesRegistry::Rule rule; |
| 696 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value, &rule)); | 696 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value, &rule)); |
| 697 | 697 |
| 698 std::string error; | 698 std::string error; |
| 699 URLMatcher matcher; | 699 URLMatcher matcher; |
| 700 scoped_ptr<WebRequestConditionSet> conditions = | 700 scoped_ptr<WebRequestConditionSet> conditions = |
| 701 WebRequestConditionSet::Create( | 701 WebRequestConditionSet::Create( |
| 702 NULL, matcher.condition_factory(), rule.conditions, &error); | 702 NULL, matcher.condition_factory(), rule.conditions, &error); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 715 EXPECT_THAT(error, HasSubstr("no time in the request life-cycle")); | 715 EXPECT_THAT(error, HasSubstr("no time in the request life-cycle")); |
| 716 EXPECT_THAT(error, HasSubstr(actions->actions().back()->GetName())); | 716 EXPECT_THAT(error, HasSubstr(actions->actions().back()->GetName())); |
| 717 } | 717 } |
| 718 | 718 |
| 719 TEST(WebRequestRulesRegistrySimpleTest, HostPermissionsChecker) { | 719 TEST(WebRequestRulesRegistrySimpleTest, HostPermissionsChecker) { |
| 720 const char kAction[] = // This action requires all URLs host permission. | 720 const char kAction[] = // This action requires all URLs host permission. |
| 721 "{ \n" | 721 "{ \n" |
| 722 " \"instanceType\": \"declarativeWebRequest.RedirectRequest\",\n" | 722 " \"instanceType\": \"declarativeWebRequest.RedirectRequest\",\n" |
| 723 " \"redirectUrl\": \"http://bar.com\" \n" | 723 " \"redirectUrl\": \"http://bar.com\" \n" |
| 724 "} "; | 724 "} "; |
| 725 scoped_ptr<Value> action_value(base::JSONReader::Read(kAction)); | 725 scoped_ptr<base::Value> action_value(base::JSONReader::Read(kAction)); |
| 726 ASSERT_TRUE(action_value); | 726 ASSERT_TRUE(action_value); |
| 727 | 727 |
| 728 WebRequestActionSet::AnyVector actions; | 728 WebRequestActionSet::AnyVector actions; |
| 729 actions.push_back(linked_ptr<base::Value>(action_value.release())); | 729 actions.push_back(linked_ptr<base::Value>(action_value.release())); |
| 730 ASSERT_TRUE(actions.back().get()); | 730 ASSERT_TRUE(actions.back().get()); |
| 731 | 731 |
| 732 std::string error; | 732 std::string error; |
| 733 bool bad_message = false; | 733 bool bad_message = false; |
| 734 scoped_ptr<WebRequestActionSet> action_set( | 734 scoped_ptr<WebRequestActionSet> action_set( |
| 735 WebRequestActionSet::Create(NULL, actions, &error, &bad_message)); | 735 WebRequestActionSet::Create(NULL, actions, &error, &bad_message)); |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 771 " ], \n" | 771 " ], \n" |
| 772 " \"actions\": [ \n" | 772 " \"actions\": [ \n" |
| 773 " { \n" | 773 " { \n" |
| 774 " \"instanceType\": \"declarativeWebRequest.RedirectRequest\",\n" | 774 " \"instanceType\": \"declarativeWebRequest.RedirectRequest\",\n" |
| 775 " \"redirectUrl\": \"http://bar.com\" \n" | 775 " \"redirectUrl\": \"http://bar.com\" \n" |
| 776 " } \n" | 776 " } \n" |
| 777 " ], \n" | 777 " ], \n" |
| 778 " \"priority\": 200 \n" | 778 " \"priority\": 200 \n" |
| 779 "} "; | 779 "} "; |
| 780 | 780 |
| 781 scoped_ptr<Value> value(base::JSONReader::Read(kRule)); | 781 scoped_ptr<base::Value> value(base::JSONReader::Read(kRule)); |
| 782 ASSERT_TRUE(value.get()); | 782 ASSERT_TRUE(value.get()); |
| 783 | 783 |
| 784 std::vector<linked_ptr<RulesRegistry::Rule> > rules; | 784 std::vector<linked_ptr<RulesRegistry::Rule> > rules; |
| 785 rules.push_back(make_linked_ptr(new RulesRegistry::Rule)); | 785 rules.push_back(make_linked_ptr(new RulesRegistry::Rule)); |
| 786 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value, rules.back().get())); | 786 ASSERT_TRUE(RulesRegistry::Rule::Populate(*value, rules.back().get())); |
| 787 | 787 |
| 788 scoped_refptr<WebRequestRulesRegistry> registry( | 788 scoped_refptr<WebRequestRulesRegistry> registry( |
| 789 new TestWebRequestRulesRegistry(extension_info_map_)); | 789 new TestWebRequestRulesRegistry(extension_info_map_)); |
| 790 | 790 |
| 791 URLMatcher matcher; | 791 URLMatcher matcher; |
| (...skipping 12 matching lines...) Expand all Loading... |
| 804 | 804 |
| 805 // This is a correct match. | 805 // This is a correct match. |
| 806 GURL url2("http://foo.com/index.html"); | 806 GURL url2("http://foo.com/index.html"); |
| 807 net::TestURLRequest request2(url2, net::DEFAULT_PRIORITY, NULL, &context); | 807 net::TestURLRequest request2(url2, net::DEFAULT_PRIORITY, NULL, &context); |
| 808 WebRequestData request_data2(&request2, ON_BEFORE_REQUEST); | 808 WebRequestData request_data2(&request2, ON_BEFORE_REQUEST); |
| 809 deltas = registry->CreateDeltas(NULL, request_data2, false); | 809 deltas = registry->CreateDeltas(NULL, request_data2, false); |
| 810 EXPECT_EQ(1u, deltas.size()); | 810 EXPECT_EQ(1u, deltas.size()); |
| 811 } | 811 } |
| 812 | 812 |
| 813 } // namespace extensions | 813 } // namespace extensions |
| OLD | NEW |