2013-03-07 38 views
1

使用茉莉/放肆與AMD合作,我不能得到打字稿的測試在VS。打字稿 - 茉莉 - 放肆 - AMD - 的Visual Studio 2012

Sample.ts:

export class Sample { 
    constructor(public name: string) { } 
} 

Simple.ts:

/// <reference path="./require.d.ts" /> 
/// <reference path="./jasmine.d.ts" /> 

import SampleModule = module("./Sample"); 

describe("TypeScript1", function() { 
    it("should pass a simple test", function() { 
      expect(1).toEqual(1); 
    }); 
}); 

describe("TypeScript2", function() { 
    it("should pass a sample test", function() { 
     var sample = new SampleModule.Sample("Wow"); 
      expect(sample.name).toEqual("Wow"); 
    }); 
}); 

...這會導致:

測試名稱:TypeScript1應該通過一個簡單的測試 測試結果:通過

測試名稱:TypeScript2應通過樣本測試 測試結果:失敗 測試時間:0:00:00

結果消息:的ReferenceError:找不到變量:SampleModule文件:typescripthtmlapp1/_Chutzpah.28.simple.js(9號線)

添加:

/// <reference path="./Sample.ts" /> 

...導致未檢測到測試。

我錯過了什麼?

回答

3

我覺得現在的問題是,當運行測試,所以模塊不加載JavaScript模塊加載器(require.js)不放肆包括 - 因此錯誤。

見變更請求here - 顯然該解決方案將增加像這樣的測試文件:

///<chutzpah_reference path="../scripts/require.js" /> 

但修復尚不可用

UPDATE

的修復應該在放肆2.4版本可用。

+0

你的意思 「chutzpah_reference」 是什麼?我遇到同樣的問題嘗試使用chutzpah插件運行Qunit測試。 看到http://stackoverflow.com/questions/16464984/how-to-load-a-public-function-using-qunit-and-typescript – Rolando 2013-05-09 22:08:42

+0

Chutzpath的作者加入了「chutzpah_reference」標籤的處理指定的JavaScript運行測試時需要包含的文件 - 請參閱我的答案中的'here'所引用的鏈接。 – MiMo 2013-05-10 08:34:36

+0

謝謝你的回答:) – Rolando 2013-05-10 13:32:35

0

放肆目前不支持其產生AMD代碼打字稿文件。之前我曾嘗試使用過這兩個版本,但遇到了TypeScript如何生成其輸出的問題。

我計劃在將來的版本中重溫這一點,我的文件this item to track這項工作的狀態。

您可以訪問該項目並附上您的示例的zip文件,以便我可以確定我的修復程序正確地解決了您的方案。

相關問題