2016-06-13 73 views
0

我完全是使用茉莉花的新手。我無法弄清楚如何爲下面的JavaScript關閉編寫測試用例。在jasmine中測試javascript關閉

我的打字稿代碼如下:

module FIRST.Mobile.Controllers{ 
    "use strict"; 
    class sampletest 
    { 
     public subtract(a: number, b: number): number { 
      return a - b; 
     } 
    } 
} 

當轉換爲JavaScript就變成:

var FIRST; 
(function (FIRST) { 
    var Mobile; 
    (function (Mobile) { 
     var Controllers; 
     (function (Controllers) { 
      "use strict"; 
      var sampletest = (function() { 
       function sampletest() { 
       } 
       sampletest.prototype.subtract = function (a, b) { 
        return a - b; 
       }; 
       return sampletest; 
      })(); 
     })(Controllers = Mobile.Controllers || (Mobile.Controllers = {})); 
    })(Mobile = FIRST.Mobile || (FIRST.Mobile = {})); 
})(FIRST || (FIRST = {})); 

我不明白,如果我能一個打字稿模塊的測試代碼? 如果是的話,有人可以解釋我怎麼能用茉莉花測試減法。

+0

我不知道肯定打字稿,但與es6和babel我從來沒有看過編譯的代碼。我使用相同的語言和結構進行測試,因爲我的src文件夾已寫入。如果您編寫ts,測試es5似乎不太合適。 – Randy

回答

0

您提供的代碼實際上與閉包無關。

您可以訪問類sampletest(我建議在駝峯寫它作爲SampleTest)這樣:FIRST.Mobile.Controllers.sampletest

你的功能subtract()是在這裏:

var t = new FIRST.Mobile.Controllers.sampletest(); 
t.subtract(5, 3); // returns 2