Не пройдены приемочные испытания ember.js
ember.js версия: 2.18.0
маршруты /band.js:
export default Route.extend({
model(){
return this.get('store').findAll('band');
},
afterModel(bands) {
if (bands.length === 1)
this.transitionTo("bands.band", bands.get('firstObject'));
}
})
тест / прием / диапазоны-test.js
var server;
moduleForAcceptance('Acceptance | bands', {
afterEach() {
server.shutdown();
}
});
test('List bands', function(assert) {
server = new Pretender(function() {
this.get('/bands', function() {
var response = {
data: [
{
id: 1,
type: 'bands',
attributes: {
name: 'Radiohead'
}
},
{
id: 2,
type: 'bands',
attributes: {
name: 'Long Distance Calling'
}
}
]
};
var contentType = {
'Content-Type': 'application/vnd.api+json'
};
return [200, contentType, JSON.stringify(response)];
});
});
visit('/bands');
andThen(function() {
assert.equal(find('.band-link').length, 2, 'All band links are rendered.');
assert.equal(find('.band-link:contains("Radiohead")').length, 1, 'First band link contains the band name.');
assert.equal(find('.band-link:contains("Long Distance Calling")').length, 1, 'The other band link contains the band name.');
});
});
Если я поставлю точку останова в функции model() и afterModel() маршрута, я увижу, что фиктивные данные успешно загружены. Но в функции andThen() в тесте кажется, что HTML не отображается вообще. Все эти длины в утверждении равны 0.
Есть идеи?