2016-01-22 37 views
1

我正在創建一個燼插件,我有點卡住試圖爲它編寫測試。這個插件實現了一個命令行選項,而不是傳送組件等。因此,在開箱即用qunit測試中,沒有一個moduleFor類型測試助手與我相關。我沒有渲染任何組件,我只是想讓測試運行者擴展我的命令行選項後面的實現。從開箱即用的測試中直接導入燼插件代碼

要寫我的測試,我需要只需要我的各種源文件在我的插件。例如,位於root/lib中的文件。我無法獲得在root/tests/integration下的qunit集成測試中可以找到這些文件的require/import。這可能嗎?我需要一個像這樣的相對路徑:

import foo from '../../../lib/foo' 

但是沒有什麼似乎工作。對於一個插件創建的文件夾結構是這樣的:

    • 應用
    • LIB(正打算把我在這裏的附加IMPL)
    • 測試
      • 虛擬
      • 幫手
      • 整合
      • 例如,test.js(試圖從這裏引用的代碼了lib文件夾中)

好像我在這種情況下,選擇只是回落到一些普通的舊JS單元測試(qunit,茉莉花等),基於插件的根,不使用任何燼魔或虛擬應用程序。我想留在由ember generate addon提供的'開箱即用'路徑上,但似乎我需要在這裏以我自己的方式,所以我可以引用我的源文件。

+0

'從「myAppName/lib目錄/ foo'進口FOO;'應該做的伎倆 –

回答

0

使用

import foo from 'myApp/lib/foo' 
+1

應在問題已經提到了這一點,這種方法一半的作品,但在測試中的一個插件,該根應用程序實際上是測試文件夾中的虛擬應用程序。我不確切知道這個呃分解器在做什麼,但是它使得應用程序根目錄是虛擬應用程序,而不是我的插件應用程序,真正的根。和相對的假人,即'虛擬/../../ lib'沒有找到任何東西。 –