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
|
// META: script=resources/ws.sub.js
// META: script=resources/throttling.js
let server = "ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH;
setup(() => waitForLoad()
.then(() => "setup done"));
promise_test(t => addWebSocket(t, server)
.then(() => busy(100))
.then(() => getThrottlingRate(100))
.then(rate => {
assert_less_than(rate, 10, "Timeout was throttled");
}), "Don't throttle when there are open WebSockets.");
promise_test(t => inFrame(t)
.then(win => win.addWebSocket(t, server))
.then(() => busy(100))
.then(() => getThrottlingRate(100))
.then(rate => {
assert_less_than(rate, 10, "Timeout was throttled");
}), "Don't throttle when there are open WebSockets in iframe.");
promise_test(t => inFrame(t)
.then(win => addWebSocket(t, server)
.then(() => win.busy(100))
.then(() => win.getThrottlingRate(100)))
.then(rate => {
assert_less_than(rate, 10, "Timeout was throttled");
}), "Don't throttle iframe when there are open WebSockets in parent.");
promise_test(t => inFrame(t)
.then(win => win.addWebSocket(t, server)
.then(() => win.busy(100))
.then(() => win.getThrottlingRate(100)))
.then(rate => {
assert_less_than(rate, 10, "Timeout was throttled");
}), "Don't throttle iframe when there are open WebSockets in iframe.");
|