私はバックボーン同期がパラメータ(オブジェクト)で呼び出されているかどうかを確認するジャスミンユニットテストを作成しています。ここでジャスミンテストをチェックするバックボーン同期に渡されるパラメータ
は私のコレクションには、コードベース
である私は、骨の同期ここで
sync: function (method, collection, options) {
if (!options) {
options = {};
}
options.headers = {
“x-yz-webservice-client-id": “abcde"
};
return Backbone.sync(method, collection, options);
}
戻る呼び出して同期する方法を持っている私は、バックボーン同期のoptions.headersは、{objectに設定されているかどうかを確認したいです "x-yz-webservice-client-id": "abcde" };次のように私はジャスミンテストでやろうとしています何と作業されていない
は次のとおりです。
var headers = {
“x-yz-webservice-client-id": “abcde"
};
var autoCompleteRecommendationsCollection = new AutoCompleteRecommendationsCollection({},opt);
spyOn(Backbone, 'sync');
autoCompleteRecommendationsView.initialize(options);
expect(Backbone.sync).toHaveBeenCalledWith(jasmine.anything(), jasmine.anything(), jasmine.objectContaining(headers));
私は、この3番目の引数は、上記のようにヘッダに設定されたプロパティを持ってテストしたいです。この議論をチェックする良い方法はありますか?あなたはスパイが実際に呼ばれて確認している、しかし、あなたのコードが間違って何もないように思わ
expect(Backbone.sync.calls.mostRecent().args[2].headers)
.toEqual(jasmine.objectContaining({
“x-yz-webservice-client-id": “abcde"
}));
: