| 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 var onRequest = chrome.declarativeWebRequest.onRequest; | 5 var onRequest = chrome.declarativeWebRequest.onRequest; |
| 6 var AddResponseHeader = | 6 var AddResponseHeader = |
| 7 chrome.declarativeWebRequest.AddResponseHeader; | 7 chrome.declarativeWebRequest.AddResponseHeader; |
| 8 var RequestMatcher = chrome.declarativeWebRequest.RequestMatcher; | 8 var RequestMatcher = chrome.declarativeWebRequest.RequestMatcher; |
| 9 var CancelRequest = chrome.declarativeWebRequest.CancelRequest; | 9 var CancelRequest = chrome.declarativeWebRequest.CancelRequest; |
| 10 var RedirectByRegEx = chrome.declarativeWebRequest.RedirectByRegEx; | 10 var RedirectByRegEx = chrome.declarativeWebRequest.RedirectByRegEx; |
| (...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 245 | 245 |
| 246 onRequest.addRules( | 246 onRequest.addRules( |
| 247 [ {conditions: [new RequestMatcher({url: {pathSuffix: ".html"}})], | 247 [ {conditions: [new RequestMatcher({url: {pathSuffix: ".html"}})], |
| 248 actions: [ | 248 actions: [ |
| 249 new RedirectByRegEx({from: "^(.*)/a.html$", to: "$1/b.html"})]} | 249 new RedirectByRegEx({from: "^(.*)/a.html$", to: "$1/b.html"})]} |
| 250 ], | 250 ], |
| 251 function() {navigateAndWait(getURLHttpSimple());} | 251 function() {navigateAndWait(getURLHttpSimple());} |
| 252 ); | 252 ); |
| 253 }, | 253 }, |
| 254 | 254 |
| 255 function testRegexFilter() { |
| 256 ignoreUnexpected = true; |
| 257 expect( |
| 258 [ |
| 259 { label: "onErrorOccurred", |
| 260 event: "onErrorOccurred", |
| 261 details: { |
| 262 url: getURLHttpSimple(), |
| 263 fromCache: false, |
| 264 error: "net::ERR_BLOCKED_BY_CLIENT" |
| 265 } |
| 266 }, |
| 267 ], |
| 268 [ ["onErrorOccurred"] ]); |
| 269 onRequest.addRules( |
| 270 [ {'conditions': [ |
| 271 new RequestMatcher({ |
| 272 'url': { |
| 273 'urlMatches': 'simple[A-Z].*a\.html$', |
| 274 'schemes': ["http"] |
| 275 }, |
| 276 })], |
| 277 'actions': [new CancelRequest()]} |
| 278 ], |
| 279 function() {navigateAndWait(getURLHttpSimple());} |
| 280 ); |
| 281 }, |
| 282 |
| 255 function testSetRequestHeader() { | 283 function testSetRequestHeader() { |
| 256 ignoreUnexpected = true; | 284 ignoreUnexpected = true; |
| 257 expect(); // Used for initialization. | 285 expect(); // Used for initialization. |
| 258 onRequest.addRules( | 286 onRequest.addRules( |
| 259 [{conditions: [new RequestMatcher()], | 287 [{conditions: [new RequestMatcher()], |
| 260 actions: [new SetRequestHeader({name: "User-Agent", value: "FoobarUA"})] | 288 actions: [new SetRequestHeader({name: "User-Agent", value: "FoobarUA"})] |
| 261 }], | 289 }], |
| 262 function() { | 290 function() { |
| 263 // Check the page content for our modified User-Agent string. | 291 // Check the page content for our modified User-Agent string. |
| 264 navigateAndWait(getURLEchoUserAgent(), function() { | 292 navigateAndWait(getURLEchoUserAgent(), function() { |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 470 this.status + ", responseText: " + this.responseText); | 498 this.status + ", responseText: " + this.responseText); |
| 471 } | 499 } |
| 472 } | 500 } |
| 473 req.open("GET", getURLHttpXHRData(), asynchronous); | 501 req.open("GET", getURLHttpXHRData(), asynchronous); |
| 474 req.send(null); | 502 req.send(null); |
| 475 }); | 503 }); |
| 476 } | 504 } |
| 477 ); | 505 ); |
| 478 }, | 506 }, |
| 479 ]); | 507 ]); |
| OLD | NEW |