我正在爲我的自定義DS.RESTAdapter編寫測試,它使用我們自己的SDK作爲傳輸程序而不是ajax調用。現在,我想測試適配器find,findAll,findQuery ...函數,這些函數需要我傳遞一個存儲實例作爲參數。 例如:Ember QUnit moduleFor(測試)適配器檢索存儲
findAll: function(store, type, sinceToken){...}
爲了能夠測試這個,我需要通過「存儲」參數是不具備的moduleFor在餘燼-qunit(不像moduleForModel在那裏你可以通過this.store內訪問商店測試實例)。
有沒有另外一種方法可以訪問當前的商店實例?
謝謝。
編輯:
我通過創建兩個,存儲和類型嘲笑解決了這個。 你可以通過創建一個存儲實例:
var store = DS.Store.create({
adapter: @subject
})
而對於類型模擬,就像測試所需特性的普通對象。
我不知道,如果你可以直接使用'moduleFor',但只使用'module',您應該可以從應用程序實例訪問它。你可以使用'App .__ container __。lookup('store:main')'獲取ember-data存儲的實例。 – jakecraige 2014-11-04 16:16:42
是的,但這需要我創建一個新的應用程序實例,這是我想避免的。 我解決了爲商店和類型創建模擬。感謝評論。 – IBQ 2014-11-04 18:53:30
你的代碼在任何地方都可以上網嗎?希望實現同樣的目標,並且可以節省大量的挖掘資源。非常感激。 – getdave 2015-01-27 08:32:27