Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 def WebIDLTest(parser, harness):
2 threw = False
3 try:
4 parser.parse("""
5 interface OptionalConstraints1 {
6 void foo(optional byte arg1, byte arg2);
7 };
8 """)
10 results = parser.finish()
11 except:
12 threw = True
14 harness.ok(not threw,
15 "Should not have thrown on non-optional argument following "
16 "optional argument.")
18 parser = parser.reset()
19 parser.parse("""
20 interface OptionalConstraints2 {
21 void foo(optional byte arg1 = 1, optional byte arg2 = 2,
22 optional byte arg3, optional byte arg4 = 4,
23 optional byte arg5, optional byte arg6 = 9);
24 };
25 """)
26 results = parser.finish()
27 args = results[0].members[0].signatures()[0][1]
28 harness.check(len(args), 6, "Should have 6 arguments")
29 harness.check(args[5].defaultValue.value, 9,
30 "Should have correct default value")