Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Firefox/dom/bindings/parser/tests/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 5 kB image not shown  

Quelle  test_undefined.py   Sprache: Python

 
import WebIDL


def WebIDLTest(parser, harness):
    try:
        parser.parse(
            """
            dictionary Dict {
              undefined undefinedMember;
              double bar;
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(threw, "undefined must not be used as the type of a dictionary member")

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            dictionary Dict {
              (undefined or double) undefinedMemberOfUnionInDict;
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of a dictionary member, "
        "whether directly or in a union",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              double bar(undefined foo);
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of a regular operation)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              getter double(undefined name);
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of a getter)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              setter undefined(DOMString name, undefined value);
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of a setter)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              deleter undefined (undefined name);
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of a deleter)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              constructor (undefined foo);
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of a constructor)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            callback Callback = undefined (undefined foo);
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of a callback)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              async iterable(undefined name);
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of an async iterable "
        "iterator)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              static double bar(undefined foo);
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined must not be used as the type of an argument in any "
        "circumstance (so not as the argument of a static operation)",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              const undefined FOO = undefined;
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined is not a valid type for a constant",
    )

    parser = parser.reset()
    threw = False

    try:
        parser.parse(
            """
            interface Foo {
              const any FOO = undefined;
            };
            """
        )
        parser.finish()
    except WebIDL.WebIDLError:
        threw = True

    harness.ok(
        threw,
        "undefined is not a valid value for a constant",
    )

Messung V0.5
C=92 H=97 G=94

¤ Dauer der Verarbeitung: 0.13 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.