第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何解決sinonJS存根問題?

如何解決sinonJS存根問題?

吃雞游戲 2023-09-28 17:33:52
所以我試圖用SinonJS 存根請(qǐng)求。在每次測(cè)試之前,它應(yīng)該使用已解決的虛假信息來模擬請(qǐng)求,但它似乎沒有按預(yù)期工作。嘗試使用 解決Promise.resolve,但它也無法按我的預(yù)期工作。這是測(cè)試代碼:describe("Store | Users actions", () => {  let commit = null;  let page = 1;  let itemsPerPage = 2;  const users_response = {    status: 200,    data: [{      "id": 1,      "name": "Leanne Graham",      "username": "Bret",      "email": "Sincere@april.biz"    },    {      "id": 2,      "name": "Ervin Howell",      "username": "Antonette",      "email": "Shanna@melissa.tv"    }]  };  beforeEach(() => {    commit = sinon.spy();    sinon      .stub(api.users, "list").resolves();  });  afterEach(() => {    api.users.list.restore();  });  it("should list users", () => {    users.actions.list({ commit }, { page, itemsPerPage });    expect(commit).to.have.been.calledWith("UNSET_ERROR");    expect(commit).to.have.been.calledWith("GET_PAGINATED", users_response);  });});這是我收到的錯(cuò)誤:  1) Store | Users actions       should list users:     AssertionError: expected spy to have been called with arguments GET_PAGINATED, {  data: [{ email: "Sincere@april.biz", id: 1, name: "Leanne Graham", username: "Bret" }, { email: "Shanna@melissa.tv", id: 2, name: "Ervin Howell", username: "Antonette" }],  status: 200}"UNSET_ERROR" "GET_PAGINATED"{  data: [{ email: "Sincere@april.biz", id: 1, name: "Leanne Graham", username: "Bret" }, { email: "Shanna@melissa.tv", id: 2, name: "Ervin Howell", username: "Antonette" }],  status: 200}      at Context.<anonymous> (dist/js/webpack:/tests/unit/store/users.spec.js:184:1)list({ commit }, { page, itemsPerPage, sort, search }) {      commit("UNSET_ERROR");      return api.users        .list(page, itemsPerPage, sort, search)        .then((users) => commit("GET_PAGINATED", users.data))        .catch((error) => commit("SET_ERROR", error));    }我在這里做錯(cuò)了什么?任何幫助深表感謝。
查看完整描述

1 回答

?
holdtom

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超10個(gè)贊

這是因?yàn)槟愕牡诙€(gè)提交函數(shù)調(diào)用是在 Promise then 方法內(nèi)部。


您需要等待 users.actions.list()。


例如:


  beforeEach(() => {

    commit = sinon.spy();

    // Note: add users_response here.

    sinon.stub(api.users, "list").resolves(users_response);

  });


  // Use async here.

  it("should list users", async () => {

    // Use await here.

    await users.actions.list({ commit }, { page, itemsPerPage });

    expect(commit).to.have.been.calledWith("UNSET_ERROR");

    // Note: expect with property data, because called with: users.data.

    expect(commit).to.have.been.calledWith("GET_PAGINATED", users_response.data);

  });


查看完整回答
反對(duì) 回復(fù) 2023-09-28
  • 1 回答
  • 0 關(guān)注
  • 113 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)