亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

kmock javascript 單元測試代碼

 更新時(shí)間:2011年02月06日 16:19:15   作者:  
javascript其實(shí)是非常需要單元測試的,但是qmock總感覺不好使?或是文檔的新舊有問題,反正我暫時(shí)是只需要函數(shù)調(diào)用的次數(shù)判斷,結(jié)果就寫了個(gè)kmock
復(fù)制代碼 代碼如下:

(function () {
var KMock = window.KMock = function () {

}
KMock.prototype.setup = function (methodName) {
var instance = this;

instance[methodName] = {
returnAs: function (fn) {
instance["_" + methodName] = function () {
instance[methodName].invokeNum++;
fn.call();
}
},
isVerify: function (exceptNum) {
if (exceptNum != null) {
return exceptNum == instance[methodName].invokeNum;
}
else {
return instance[methodName].invokeNum > 0;
}
},
invoke: function () {
instance["_" + methodName].call();
},

invokeNum: 0
};
return instance[methodName];
}


})();

//自己寫了個(gè)mock類,暫時(shí)是用來模擬函數(shù),然后判斷函數(shù)的調(diào)用次數(shù),以下是用法
<BR><DIV class=cnblogs_Highlighter><PRE class=brush:javascript>/// <reference path="Flight.js" />
/// <reference path="http://demo.jb51.net/jslib/qunit/qunit.js" />
/// <reference path="KMock.js" />


module("enter coin");

test("enter coin while game has not yet start", function () {
var flight = new KFlight();

var mock = new KMock();
mock.setup("draw").returnAs(function () {
});

flight.draw = mock.draw.invoke;


equal(flight.coinNum, 0);
equal(flight.gameState, 0);
flight.coinEnter();
equal(flight.coinNum, 0);
equal(flight.gameState, 1);


equal(mock.draw.isVerify(1), true);

});

相關(guān)文章

最新評(píng)論