如何让Sinon.js假服务器调用成功函数?

时间:2015-05-19 10:13:34

标签: javascript testing jasmine server sinon

我正在使用Jasmine和Sinon来测试ajax调用。测试看起来像这样:

describe("function initialize", function(){

    var server;

    beforeEach(function(){
        server = sinon.fakeServer.create();
    });

    afterEach(function() {
        server.restore();
    });

    it ("should make an ajax call successfully", function(){
        server.respondWith(session.apipath + "/login/refreshToken/",
            [200, { 'Content-Type': 'application/json' },
            '{user:"asdf",loginToken:"bla"}']);
        session.initialize();
        server.respond();
        expect(localStorage.getItem("loginToken")).toBe("bla");
    });
});

我想让它调用成功函数。

$.ajax(this.apipath + "/login/refreshToken/", {
    success: function (response) {
        alert("success!!!");
        localStorage.setItem("loginToken", response.loginToken);
    },
    error: function(){
        alert("error!!!");
    }
});

但只调用错误。我做错了什么?

1 个答案:

答案 0 :(得分:0)

你可以试试这个。 (虽然这已经很晚了,但我还是想建议你。)

Exchanges

如果您想知道原因,请阅读this