Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Side by Side Diff: chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_registry_unittest.cc

Issue 10451071: Add support for response header manipulation in Declarative WebRequest API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Made header value comparison case-insensitive Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 <vector> 7 #include <vector>
8 8
9 #include "base/memory/linked_ptr.h" 9 #include "base/memory/linked_ptr.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
329 EXPECT_EQ("", error); 329 EXPECT_EQ("", error);
330 330
331 std::vector<linked_ptr<RulesRegistry::Rule> > rules_to_add_2(1); 331 std::vector<linked_ptr<RulesRegistry::Rule> > rules_to_add_2(1);
332 rules_to_add_2[0] = CreateRedirectRule("http://www.bar.com"); 332 rules_to_add_2[0] = CreateRedirectRule("http://www.bar.com");
333 error = registry->AddRules(kExtensionId2, rules_to_add_2); 333 error = registry->AddRules(kExtensionId2, rules_to_add_2);
334 EXPECT_EQ("", error); 334 EXPECT_EQ("", error);
335 335
336 GURL url("http://www.google.com"); 336 GURL url("http://www.google.com");
337 TestURLRequest request(url, NULL); 337 TestURLRequest request(url, NULL);
338 std::list<LinkedPtrEventResponseDelta> deltas = 338 std::list<LinkedPtrEventResponseDelta> deltas =
339 registry->CreateDeltas(&request, ON_BEFORE_REQUEST); 339 registry->CreateDeltas(&request, ON_BEFORE_REQUEST,
340 WebRequestRule::OptionalRequestData());
340 341
341 // The second extension is installed later and will win for this reason 342 // The second extension is installed later and will win for this reason
342 // in conflict resolution. 343 // in conflict resolution.
343 ASSERT_EQ(2u, deltas.size()); 344 ASSERT_EQ(2u, deltas.size());
344 deltas.sort(&helpers::InDecreasingExtensionInstallationTimeOrder); 345 deltas.sort(&helpers::InDecreasingExtensionInstallationTimeOrder);
345 346
346 std::list<LinkedPtrEventResponseDelta>::iterator i = deltas.begin(); 347 std::list<LinkedPtrEventResponseDelta>::iterator i = deltas.begin();
347 LinkedPtrEventResponseDelta winner = *i++; 348 LinkedPtrEventResponseDelta winner = *i++;
348 LinkedPtrEventResponseDelta loser = *i; 349 LinkedPtrEventResponseDelta loser = *i;
349 350
(...skipping 25 matching lines...) Expand all
375 EXPECT_EQ("", error); 376 EXPECT_EQ("", error);
376 377
377 std::vector<linked_ptr<RulesRegistry::Rule> > rules_to_add_3(1); 378 std::vector<linked_ptr<RulesRegistry::Rule> > rules_to_add_3(1);
378 rules_to_add_3[0] = CreateIgnoreRule(); 379 rules_to_add_3[0] = CreateIgnoreRule();
379 error = registry->AddRules(kExtensionId, rules_to_add_3); 380 error = registry->AddRules(kExtensionId, rules_to_add_3);
380 EXPECT_EQ("", error); 381 EXPECT_EQ("", error);
381 382
382 GURL url("http://www.google.com/index.html"); 383 GURL url("http://www.google.com/index.html");
383 TestURLRequest request(url, NULL); 384 TestURLRequest request(url, NULL);
384 std::list<LinkedPtrEventResponseDelta> deltas = 385 std::list<LinkedPtrEventResponseDelta> deltas =
385 registry->CreateDeltas(&request, ON_BEFORE_REQUEST); 386 registry->CreateDeltas(&request, ON_BEFORE_REQUEST,
387 WebRequestRule::OptionalRequestData());
386 388
387 // The redirect by the first extension is ignored due to the ignore rule. 389 // The redirect by the first extension is ignored due to the ignore rule.
388 ASSERT_EQ(1u, deltas.size()); 390 ASSERT_EQ(1u, deltas.size());
389 LinkedPtrEventResponseDelta effective_rule = *(deltas.begin()); 391 LinkedPtrEventResponseDelta effective_rule = *(deltas.begin());
390 392
391 EXPECT_EQ(kExtensionId2, effective_rule->extension_id); 393 EXPECT_EQ(kExtensionId2, effective_rule->extension_id);
392 EXPECT_EQ(base::Time() + base::TimeDelta::FromDays(2), 394 EXPECT_EQ(base::Time() + base::TimeDelta::FromDays(2),
393 effective_rule->extension_install_time); 395 effective_rule->extension_install_time);
394 EXPECT_EQ(GURL("http://www.bar.com"), effective_rule->new_url); 396 EXPECT_EQ(GURL("http://www.bar.com"), effective_rule->new_url);
395 } 397 }
396 } // namespace extensions 398 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698