Ich möchte eine benutzerdefinierte assert
-Funktion für QUnit schreiben, um zu überprüfen, ob eine tatsächliche Zeichenkette mit einer erwarteten Regex übereinstimmt. Mit Hilfe von dieser Frage habe ich eine erste grundlegende Version geschrieben, die wie erwartet funktioniert:
Dies gibt aus:
Nachricht: Erwartet: "String Matching / Kauderwelsch /", Aktuell: "Blume"
Großartig!
Beim Schreiben habe ich jedoch sowohl die QUnit.extend
-Docs als auch die QUnit.push-Dokumentation . Letzteres erwähnt jedoch:
Diese Methode ist veraltet und es wird empfohlen, sie über ihre direkte Referenz im Assertion-Kontext zu verwenden.
Aber ich sehe nicht, wie ich diesen Ratschlag im Kontext von QUnit.extend
anwenden kann.
Wie schreibe ich eine benutzerdefinierte Assertion, die die veraltete QUnit.push
Funktion nicht verwendet?
Wie von @sirrocco in einem Kommentar vorgeschlagen, gibt es ein anderes push
-Methodendokument, das Sie dafür verwenden sollten: siehe Dieser Dokumentationslink . Das bedeutet, dass Ihre Antwort so einfach ist wie das Ändern einer Codezeile, um this.push
anstelle von Qunit.push
zu verwenden:
Hier ist ein voll funktionsfähiges Beispiel:
Tags und Links javascript qunit