From f85238322e6c3fa2333f566baaae18833605c8a1 Mon Sep 17 00:00:00 2001 From: Ariya Hidayat Date: Sat, 13 Sep 2014 20:00:21 -0500 Subject: [PATCH] Port the test to change the encoded URL of network request. https://github.com/ariya/phantomjs/issues/12439 --- .../webpage/change-request-encoded-url.js | 22 ++++++++++++ test/run-tests.py | 1 + test/webpage-spec.js | 35 ------------------- 3 files changed, 23 insertions(+), 35 deletions(-) create mode 100644 test/module/webpage/change-request-encoded-url.js diff --git a/test/module/webpage/change-request-encoded-url.js b/test/module/webpage/change-request-encoded-url.js new file mode 100644 index 00000000..489ee7cc --- /dev/null +++ b/test/module/webpage/change-request-encoded-url.js @@ -0,0 +1,22 @@ +var assert = require('../../assert'); +var webpage = require('webpage'); + +var page = webpage.create(); + +var url = "http://localhost:9180/cdn-cgi/pe/bag?r%5B%5D=http%3A%2F%2Fwww.example.org%2Fcdn-cgi%2Fnexp%2Fabv%3D927102467%2Fapps%2Fabetterbrowser.js"; +var receivedUrl; + +page.onResourceRequested = function(requestData, request) { + request.changeUrl(requestData.url); +}; + +page.onResourceReceived = function(data) { + if (data.stage === 'end') { + receivedUrl = data.url; + } +}; + +page.open(url, function (status) { + assert.equal(status, 'success'); + assert.equal(receivedUrl, url); +}); diff --git a/test/run-tests.py b/test/run-tests.py index 54f836ff..85ac6f63 100755 --- a/test/run-tests.py +++ b/test/run-tests.py @@ -34,6 +34,7 @@ TESTS = [ 'module/webpage/modify-header.js', 'module/webpage/repaint-requested.js', 'module/webpage/change-request-url.js', + 'module/webpage/change-request-encoded-url.js', 'module/webpage/abort-network-request.js', 'module/webpage/resource-request-error.js', 'module/webpage/resource-received-error.js', diff --git a/test/webpage-spec.js b/test/webpage-spec.js index 598e89a8..584c9591 100644 --- a/test/webpage-spec.js +++ b/test/webpage-spec.js @@ -1150,41 +1150,6 @@ describe("WebPage object", function() { }); }); - it("should change a url request with an encoded query string", function() { - var page = new require('webpage').create(); - - var server = require('webserver').create(); - server.listen(12345, function(request, response) { - // echo received request headers in response body - response.write(JSON.stringify(request.headers)); - response.close(); - }); - - var url = "http://localhost:12345/cdn-cgi/pe/bag?r%5B%5D=http%3A%2F%2Fwww.example.org%2Fcdn-cgi%2Fnexp%2Fabv%3D927102467%2Fapps%2Fabetterbrowser.js"; - - var handled = false; - runs(function() { - expect(handled).toEqual(false); - - page.onResourceRequested = function(requestData, request) { - request.changeUrl(requestData.url); - }; - - page.onResourceReceived = function(data) { - if (data['stage'] === 'end') { - expect(data.url).toEqual(url); - } - }; - - page.open(url, function (status) { - expect(status == 'success').toEqual(true); - handled = true; - server.close(); - }); - }); - }); - - xit('should fail on secure connection to url with bad cert', function() { var page = require('webpage').create(); var url = 'https://tv.eurosport.com/';