mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
* Update WebIDL.py * Update WebIDL.py * Add builtin-array.patch * Fix CodegenRust.py and Configuration.py * Fix missing downcasts * mach fmt * Update check and comment to explain why we need this check * Update Global of DissimilarOriginWindow.webidl
45 lines
1.1 KiB
Python
45 lines
1.1 KiB
Python
def WebIDLTest(parser, harness):
|
|
try:
|
|
parser.parse(
|
|
"""
|
|
enum Foo { "a" };
|
|
interface Foo;
|
|
"""
|
|
)
|
|
parser.finish()
|
|
harness.ok(False, "Should fail to parse")
|
|
except Exception as e:
|
|
harness.ok(
|
|
"Name collision" in str(e), "Should have name collision for interface"
|
|
)
|
|
|
|
parser = parser.reset()
|
|
try:
|
|
parser.parse(
|
|
"""
|
|
dictionary Foo { long x; };
|
|
enum Foo { "a" };
|
|
"""
|
|
)
|
|
parser.finish()
|
|
harness.ok(False, "Should fail to parse")
|
|
except Exception as e:
|
|
harness.ok(
|
|
"Name collision" in str(e), "Should have name collision for dictionary"
|
|
)
|
|
|
|
parser = parser.reset()
|
|
try:
|
|
parser.parse(
|
|
"""
|
|
enum Foo { "a" };
|
|
enum Foo { "b" };
|
|
"""
|
|
)
|
|
parser.finish()
|
|
harness.ok(False, "Should fail to parse")
|
|
except Exception as e:
|
|
harness.ok(
|
|
"Multiple unresolvable definitions" in str(e),
|
|
"Should have name collision for dictionary",
|
|
)
|