mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
50 lines
2.0 KiB
HTML
50 lines
2.0 KiB
HTML
<html>
|
|
<link rel="import" href="../resources/chai.html" />
|
|
<link rel="import" href="../resources/mocha.html" />
|
|
<link rel="import" href="/mojo/public/html/core.html" as="core" />
|
|
<link rel="import" href="/mojo/public/html/connection.html" as="connection" />
|
|
<link rel="import" href="/mojo/services/public/interfaces/network/network_service.mojom.html" as="net" />
|
|
<link rel="import" href="/mojo/services/public/interfaces/network/url_loader.mojom.html" as="loader" />
|
|
<script>
|
|
describe('Mojo network_service', function() {
|
|
this.enableTimeouts(false);
|
|
|
|
it('should be able to fetch text files', function(done) {
|
|
var netServiceHandle = internals.connectToService(
|
|
"mojo://network_service//", "mojo::NetworkService");
|
|
var netConnection = new connection.Connection(
|
|
netServiceHandle,
|
|
net.NetworkService.stubClass,
|
|
net.NetworkService.proxyClass);
|
|
var urlLoaderPipe = new core.createMessagePipe();
|
|
netConnection.remote.createURLLoader(urlLoaderPipe.handle1);
|
|
var urlLoaderConnection = new connection.Connection(
|
|
urlLoaderPipe.handle0,
|
|
loader.URLLoader.stubClass,
|
|
loader.URLLoader.proxyClass);
|
|
var urlRequest = new loader.URLRequest();
|
|
urlRequest.url = "http://127.0.0.1:8000/services/resources/pass.txt";
|
|
urlRequest.method = "GET";
|
|
urlRequest.auto_follow_redirects = true;
|
|
var urlRequestPromise = urlLoaderConnection.remote.start(urlRequest);
|
|
urlRequestPromise.then(function(result) {
|
|
console.log("url => " + result.response["url"]);
|
|
console.log("status_line => " + result.response["status_line"]);
|
|
console.log("mime_type => " + result.response["mime_type"]);
|
|
var drainDataPromise = core.drainData(result.response.body);
|
|
drainDataPromise.then(function(result) {
|
|
console.log("read " + result.buffer.byteLength + " bytes");
|
|
done();
|
|
}).catch(function() {
|
|
assert.ok(false, "core.drainData failed");
|
|
done();
|
|
});
|
|
}).catch(function() {
|
|
assert.ok(false, "start failed");
|
|
done();
|
|
});
|
|
});
|
|
});
|
|
</script>
|
|
</html>
|