4
我正在對Reflux商店進行摩卡測試,以驗證某個操作是否會導致商店內的狀態發生變化。摩卡迴流商店的測試狀態變化
商店:代碼的縮小版下面給出
var AppStore = Reflux.createStore({
init: function() {
this.foo = false;
},
listenables: [AppActions],
onFooAction: function() {
this.foo = !this.foo;
this.trigger({action: "foo-ed"});
};
});
操作:
var AppActions = Reflux.createActions([
"fooAction"
]);
測試:
it("toggles foo", function() {
expect(AppStore.foo).to.equal(false);
AppStore.listenables[0].fooAction();
expect(AppStore.foo).to.equal(true);
});
然而,第二個斷言(expect(AppStore.foo).to.equal(true);
)沒有說foo
仍然是錯誤的。
通過在onFooAction
方法內執行console.log
,我已驗證該方法實際上已觸發,並且this.foo
正在切換。
有沒有什麼基本的東西我在這裏失蹤:在概念上還是其他方面?我衷心希望這不是時機問題!