| OLD | NEW |
| 1 <html> | 1 <html> |
| 2 <import src="../resources/chai.sky" /> | 2 <import src="../resources/chai.sky" /> |
| 3 <import src="../resources/mocha.sky" /> | 3 <import src="../resources/mocha.sky" /> |
| 4 <import src="/mojo/public/sky/core.sky" as="core" /> | 4 <import src="/mojo/public/sky/core.sky" as="core" /> |
| 5 <import src="/mojo/public/sky/connection.sky" as="connection" /> | 5 <import src="/mojo/public/sky/connection.sky" as="connection" /> |
| 6 <import src="/mojo/services/network/public/interfaces/network_service.mojom.sky"
as="net" /> | 6 <import src="/mojo/services/network/public/interfaces/network_service.mojom.sky"
as="net" /> |
| 7 <import src="/mojo/services/network/public/interfaces/url_loader.mojom.sky" as="
loader" /> | 7 <import src="/mojo/services/network/public/interfaces/url_loader.mojom.sky" as="
loader" /> |
| 8 <import src="/mojo/services/public/sky/application.sky" as="application" /> | 8 <import src="/mojo/services/public/sky/shell.sky" as="shell" /> |
| 9 <import src="/mojo/public/interfaces/application/shell.mojom.sky" as="shellMojom
" /> |
| 9 <script> | 10 <script> |
| 11 const Shell = shell.Shell; |
| 12 |
| 10 describe('Mojo network_service', function() { | 13 describe('Mojo network_service', function() { |
| 11 this.enableTimeouts(false); | 14 this.enableTimeouts(false); |
| 12 | 15 |
| 13 it('should be able to fetch text files', function(done) { | 16 it('should be able to fetch text files', function(done) { |
| 14 var app = new application.Application(internals.passShellProxyHandle()); | 17 var shellHandle = internals.passShellProxyHandle(); |
| 15 var netService = app.shell.connectToService( | 18 var shellProxy = connection.bindHandleToProxy(shellHandle, shellMojom.Shell)
; |
| 19 var shell = new Shell(shellProxy); |
| 20 var netService = shell.connectToService( |
| 16 "mojo:network_service", net.NetworkService); | 21 "mojo:network_service", net.NetworkService); |
| 17 | 22 |
| 18 var urlLoader; | 23 var urlLoader; |
| 19 netService.createURLLoader(function(urlLoaderProxy) { | 24 netService.createURLLoader(function(urlLoaderProxy) { |
| 20 urlLoader = urlLoaderProxy; | 25 urlLoader = urlLoaderProxy; |
| 21 }); | 26 }); |
| 22 | 27 |
| 23 var urlRequest = new loader.URLRequest(); | 28 var urlRequest = new loader.URLRequest(); |
| 24 urlRequest.url = "http://127.0.0.1:8000/sky/tests/services/resources/pass.tx
t"; | 29 urlRequest.url = "http://127.0.0.1:8000/sky/tests/services/resources/pass.tx
t"; |
| 25 urlRequest.method = "GET"; | 30 urlRequest.method = "GET"; |
| 26 urlRequest.auto_follow_redirects = true; | 31 urlRequest.auto_follow_redirects = true; |
| 32 |
| 27 var urlRequestPromise = urlLoader.start(urlRequest); | 33 var urlRequestPromise = urlLoader.start(urlRequest); |
| 28 urlRequestPromise.then(function(result) { | 34 urlRequestPromise.then(function(result) { |
| 35 if (result.response.error) { |
| 36 assert.ok(false, "network request failed " + result.response.error.code
+ " " |
| 37 + result.response.error.description); |
| 38 done(); |
| 39 } |
| 29 console.log("url => " + result.response["url"]); | 40 console.log("url => " + result.response["url"]); |
| 30 console.log("status_line => " + result.response["status_line"]); | 41 console.log("status_line => " + result.response["status_line"]); |
| 31 console.log("mime_type => " + result.response["mime_type"]); | 42 console.log("mime_type => " + result.response["mime_type"]); |
| 43 |
| 44 var start = Date.now(); |
| 45 while (Date.now() - start < 3) {} |
| 46 |
| 32 var drainDataPromise = core.drainData(result.response.body); | 47 var drainDataPromise = core.drainData(result.response.body); |
| 33 drainDataPromise.then(function(result) { | 48 drainDataPromise.then(function(result) { |
| 34 console.log("read " + result.buffer.byteLength + " bytes"); | 49 console.log("read " + result.buffer.byteLength + " bytes"); |
| 35 done(); | 50 done(); |
| 36 }).catch(function() { | 51 }).catch(function() { |
| 37 assert.ok(false, "core.drainData failed"); | 52 assert.ok(false, "core.drainData failed"); |
| 38 done(); | 53 done(); |
| 39 }); | 54 }); |
| 40 }).catch(function() { | 55 }).catch(function() { |
| 41 assert.ok(false, "start failed"); | 56 assert.ok(false, "start failed"); |
| 42 done(); | 57 done(); |
| 43 }); | 58 }); |
| 44 }); | 59 }); |
| 45 }); | 60 }); |
| 46 </script> | 61 </script> |
| 47 </html> | 62 </html> |
| OLD | NEW |