1

テンプレートをロードする関数があり、正しい URL が呼び出されていることを確認したいと考えています。

ajax呼び出しをスパイする以外の情報が見つからないので、.load()呼び出しも同じだと思います。私はジャスミン2.4.1を使用しています

関数

function templateLoader() {
    var templateURL = '/path/to/template.html';
    $('#myElement').load(templateURL, function(response, status, xhr) {
        if (status === "error") {
            common.templateError(templateURL, xhr);
        } else {
            ns.successFunction();
        }
    });
}

ジャスミンテスト

var templateURL = '/path/to/template.html';
spyOn($('#myElement'), "load");
templateLoader(); // call the function
expect($('#myElement').load.calls.mostRecent().args[0]["url"]).toEqual(templateURL);

このテストを実行すると、次のエラーが表示されます。

TypeError: 未定義のプロパティ 'mostRecent' を読み取ることができません

これを行う別の方法はありますか?また、成功関数が呼び出されていることを確認したいのですが、URLが正しいことを確認できるまで、それはできません。

4

1 に答える 1