Sinon FakeServer keine Anfragen?

Ich folge dem SinonJSFake Server Tutorial und ich führe diesen einfachen Code aus:

var server;

before(function () { server = sinon.fakeServer.create(); });
after(function () { server.restore(); });

it("calls callback with deserialized data", function () {
    var callback = sinon.spy();
    getTodos(42, callback);

    // This is part of the FakeXMLHttpRequest API
    server.requests[0].respond(
        200,
        { "Content-Type": "application/json" },
        JSON.stringify([{ id: 1, text: "Provide examples", done: true }])
    );

    assert(callback.calledOnce);
});

Ich füge die getTodos-Funktion in dieselbe Datei ein. Hier ist es auch:

function getTodos(listId, callback) {
    $.ajax({
         url: "/todo/" + listId + "/items",
         success: function (data) {
             // Node-style CPS: callback(err, data)
             callback(null, data);
         }
    });
}

Ich erhalte jedoch eine FehlermeldungTypeError: Cannot read property 'respond' of undefined. Es sieht aus wieserver.requests ist leer - warum ist das so? Wie kann ich sicherstellen, dass die Anfragen angezeigt werden?

AKTUALISIERE: Ich konnte das Problem eingrenzen. Ich habe der getTodos-Funktion einen "error" -Rückruf hinzugefügt und für den Fehler console.log ausgeführt. Es stellt sich heraus, dass ein Syntaxfehler vom jsdom Node-Modul kommt, das versucht, @ zu tuurlObj = new URL(uri, documentBaseURLSerialized(this._ownerDocument)); was dann verursacht$.ajax({ Versagen. Hat jemand eine Idee dazu?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage