2014-05-14 23 views
5

Bir denetleyici için (moduleFor('controller:name', ...) kullanarak) moduleForModel -özel this.store()'u kullanmak istediğim bir ember-qunit sınama durumum var DS.FixtureAdapter veri deposunu almak için sipariş verin. Bu özel test durumu için, modeli denemeye çalışmıyorum - sadece denetleyicinin bir dizi model örneği ile doldurulabildiğini doğrulamak istiyorum ve çeşitli veriler bu verilere karşı çalıştırılabilir. Yukarıdaki TestController adında bir kontrolör bulunmaktadır ve Test adında bir modeli de vardır örnekteDenetleyicileri bir depoyla sınamak için ember-qunit kullanma (DS.FixtureAdapter)

moduleFor("controller:test", 'My Controller', { 
    setup: -> 
    @store().createRecord 'test', value: 1 
    @store().createRecord 'test', value: 2 

    @subject({ 
     model: @store().all('test') 
    }) 
    teardown: -> App.reset() 
}, (container, context) -> 
    container.register 'store:main', DS.Store 
    container.register 'adapter:application', DS.FixtureAdapter 
    context.__setup_properties__.store = -> container.lookup('store:main') 
) 

: gibi CoffeeScript kullanıyorum

benim kod görünmesi için. container.register ve context.__setup_properties__.store satırlarını ember-qunit içinde moduleForModel tanımından kaldırdım.

Setup failed on [test case name]: No model was found for 'test' 

kor-qunit çalışıyor dışında fiili uygulamasını çalıştırma:

sorun

kor-qunit test takımı çalıştırırken bir hata alıyorum olmasıdır. Belki de aynı sorunu olan birileri var mı? Ya da belki yanlış yaklaşımı alıyorum?

cevap

4

Sorununuz, test modelinizin kapta kayıtlı olmaması olabilir, bu nedenle çözümlenemez.

Sen test modülü geri aramaları sırasında elle kayıt olabilir:

container.register('model:test', TestModel) 

Veya moduleFor impl ihtiyaçları özelliğini kullanın:

moduleForComponent('controller:test', 'My Controller', { 

    // specify the other units that are required for this test 
    needs: ['model:test'], 
    setup: {...}, 
    teardown: {...} 
}); 
+0

Teşekkür, eksik olan 'needs' alan oldu. İşe yarıyor! – jeninto

İlgili konular