blob: c1a09272da2ef5fe0eb7dd1d0dae979ec0c1e256 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
add_task(async function channelname() {
var file = new File(
[new Blob(["test"], { type: "text/plain" })],
"test-name"
);
var url = URL.createObjectURL(file);
var channel = NetUtil.newChannel({
uri: url,
loadUsingSystemPrincipal: true,
});
let inputStream = channel.open();
ok(inputStream, "Should be able to open channel");
ok(
inputStream.QueryInterface(Ci.nsIAsyncInputStream),
"Stream should support async operations"
);
await new Promise(resolve => {
inputStream.asyncWait(
() => {
let available = inputStream.available();
ok(available, "There should be data to read");
Assert.equal(
channel.contentDispositionFilename,
"test-name",
"filename matches"
);
resolve();
},
0,
0,
Services.tm.mainThread
);
});
inputStream.close();
channel.cancel(Cr.NS_ERROR_FAILURE);
});
|