OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <script src="../../resources/js-test.js"></script> | 2 <script src="../../resources/js-test.js"></script> |
3 <script> | 3 <script> |
4 description('IDL dictionary unittest'); | 4 description('IDL dictionary unittest'); |
5 | 5 |
6 var testObject1 = { foo: 'x' }; | 6 var testObject1 = { foo: 'x' }; |
7 var testObject2 = { bar: 'y' }; | 7 var testObject2 = { bar: 'y' }; |
8 | 8 |
9 if (window.internals && internals.dictionaryTest) { | 9 if (window.internals && internals.dictionaryTest) { |
10 var dictionaryTest = window.internals.dictionaryTest(); | 10 var dictionaryTest = window.internals.dictionaryTest(); |
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
304 }); | 304 }); |
305 derived = dictionaryTest.getDerived(); | 305 derived = dictionaryTest.getDerived(); |
306 shouldBe('derived.longMember', '1'); | 306 shouldBe('derived.longMember', '1'); |
307 shouldBeEqualToString('derived.stringMemberWithDefault', 'modifiedString'); | 307 shouldBeEqualToString('derived.stringMemberWithDefault', 'modifiedString'); |
308 shouldBeEqualToString('derived.derivedStringMember', 'modifiedString2'); | 308 shouldBeEqualToString('derived.derivedStringMember', 'modifiedString2'); |
309 shouldBeEqualToString('derived.derivedStringMemberWithDefault', 'modifiedStr
ing3'); | 309 shouldBeEqualToString('derived.derivedStringMemberWithDefault', 'modifiedStr
ing3'); |
310 shouldBeUndefined('derived.invalidMember'); | 310 shouldBeUndefined('derived.invalidMember'); |
311 shouldBeFalse('derived.requiredBooleanMember'); | 311 shouldBeFalse('derived.requiredBooleanMember'); |
312 debug(''); | 312 debug(''); |
313 | 313 |
| 314 debug('Test for triple level derived dictionary'); |
| 315 dictionaryTest.setDerivedDerived({ |
| 316 longMember: 1, |
| 317 derivedStringMember: 'modifiedString', |
| 318 derivedDerivedStringMember: 'modifiedString2', |
| 319 requiredBooleanMember: false, |
| 320 }); |
| 321 derived = dictionaryTest.getDerivedDerived(); |
| 322 shouldBe('derived.longMember', '1'); |
| 323 shouldBeEqualToString('derived.derivedStringMember', 'modifiedString'); |
| 324 shouldBeEqualToString('derived.derivedDerivedStringMember', 'modifiedString2
'); |
| 325 shouldBeFalse('derived.requiredBooleanMember'); |
| 326 debug(''); |
| 327 |
314 debug('Test for passing invalid values as derived dictionary'); | 328 debug('Test for passing invalid values as derived dictionary'); |
315 shouldThrow("dictionaryTest.setDerived({objectMember: 42, requiredBooleanMem
ber: false })"); | 329 shouldThrow("dictionaryTest.setDerived({objectMember: 42, requiredBooleanMem
ber: false })"); |
316 shouldThrow("dictionaryTest.setDerived({})"); // Missing required member. | 330 shouldThrow("dictionaryTest.setDerived({})"); // Missing required member. |
317 } | 331 } |
318 </script> | 332 </script> |
OLD | NEW |