最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

kmock javascript 單元測試代碼

 更新時間:2011年02月06日 16:19:15   作者:  
javascript其實是非常需要單元測試的,但是qmock總感覺不好使?或是文檔的新舊有問題,反正我暫時是只需要函數(shù)調(diào)用的次數(shù)判斷,結(jié)果就寫了個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];
}


})();

//自己寫了個mock類,暫時是用來模擬函數(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)文章

  • JavaScript中的DOM遍歷詳解

    JavaScript中的DOM遍歷詳解

    文檔對象模型 (DOM) 表示 HTML 文檔的結(jié)構(gòu),導(dǎo)航或“遍歷”此結(jié)構(gòu)是 Web 開發(fā)的基本方面,使開發(fā)人員能夠在網(wǎng)頁上選擇、修改、刪除或添加內(nèi)容,本文深入研究了使用 JavaScript 進(jìn)行 DOM 遍歷的藝術(shù),提供了一個強(qiáng)大的工具包來處理各種遍歷場景
    2023-09-09
  • 微信小程序wx.uploadfile 本地文件轉(zhuǎn)base64的實現(xiàn)代碼

    微信小程序wx.uploadfile 本地文件轉(zhuǎn)base64的實現(xiàn)代碼

    這篇文章主要介紹了微信小程序wx.uploadfile 本地文件轉(zhuǎn)base64的實現(xiàn)方法,文中通過代碼講解給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06
  • 微信小程序數(shù)據(jù)存儲與取值詳解

    微信小程序數(shù)據(jù)存儲與取值詳解

    這篇文章主要為大家詳細(xì)介紹了微信小程序數(shù)據(jù)存儲與取值的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • javascript 中select框觸發(fā)事件過程的分析

    javascript 中select框觸發(fā)事件過程的分析

    這篇文章主要介紹了javascript 中select框觸發(fā)事件過程的分析的相關(guān)資料,這里對select 觸發(fā)過程進(jìn)行了深入分析,幫助大家理解這部分內(nèi)容,需要的朋友可以參考下
    2017-08-08
  • 微信小程序使用slider設(shè)置數(shù)據(jù)值及switch開關(guān)組件功能【附源碼下載】

    微信小程序使用slider設(shè)置數(shù)據(jù)值及switch開關(guān)組件功能【附源碼下載】

    這篇文章主要介紹了微信小程序使用slider設(shè)置數(shù)據(jù)值及switch開關(guān)組件功能,結(jié)合實例形式分析了slider組件及switch組件的功能與使用方法,并附帶源碼供讀者下載參考,需要的朋友可以參考下
    2017-12-12
  • 解析Json字符串的三種方法日常常用

    解析Json字符串的三種方法日常常用

    下面將介紹日常中使用的三種解析json字符串的方法,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2018-05-05
  • JS中的new Date()參數(shù)示例詳解

    JS中的new Date()參數(shù)示例詳解

    js中,new Date([params]),參數(shù)傳遞有五種方式,本文給大家講解的非常詳細(xì),對new Date()參數(shù)相關(guān)知識感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • 詳解JavaScript發(fā)送埋點請求的兩種方式

    詳解JavaScript發(fā)送埋點請求的兩種方式

    對于發(fā)送埋點請求這種應(yīng)用場景,我們有兩種簡單的處理方式:動態(tài)創(chuàng)建<script>和<img>兩種方式。本文就詳細(xì)講講二種方式的實現(xiàn),需要的可以參考一下
    2022-06-06
  • Auntion-TableSort javascript類文件

    Auntion-TableSort javascript類文件

    Auntion-TableSort javascript類文件...
    2007-11-11
  • 處理JavaScript值為undefined的7個小技巧

    處理JavaScript值為undefined的7個小技巧

    這篇文章主要介紹了處理JavaScript值為undefined的7個小技巧,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07

最新評論

多伦县| 南漳县| 襄城县| 徐水县| 溧水县| 长沙市| 遂平县| 宾阳县| 嘉祥县| 楚雄市| 商南县| 安岳县| 莱芜市| 定南县| 石楼县| 陇南市| 内江市| 镇远县| 京山县| 阜新市| 织金县| 嵊州市| 浪卡子县| 开平市| 浮山县| 独山县| 平南县| 宁安市| 凤台县| 日土县| 郑州市| 丹凤县| 盐城市| 田林县| 定边县| 农安县| 孟津县| 普安县| 肃北| 广德县| 晋宁县|