Я только начал добавлять ember-intl
в приложение, для которого у меня были рабочие тесты.Мои приемочные тесты все еще работают, но мои интеграционные тесты на компонентах, шаблоны которых используют ember-intl
для перевода строк, не выполняются с:
"Не определен языковой стандарт. Невозможно разрешить перевод: ..."
В документах ember-intl есть раздел по интеграционному тестированию , который, кажется, устарел:
import hbs from 'htmlbars-inline-precompile';
import wait from 'ember-test-helpers/wait';
import { moduleForComponent, test } from 'ember-qunit';
let service;
moduleForComponent('x-product', 'XProductComponent', {
integration: true,
setup() {
service = this.container.lookup('service:intl');
service.setLocale('en-us');
}
});
test('it renders', function(assert) {
assert.expect(1);
this.render(hbs`{{x-product price=price deadline=deadline}}`);
this.set('price', 1000);
this.set('deadline', new Date());
let output = this.$().text();
assert.ok(output);
});
test('it translates', function(assert) {
assert.expect(1);
/* waits for async behavior (loading translations on app boot) to settle */
return wait().then(() => {
assert.equal(service.t('some.key'), 'Hello world');
});
});
Я смотрел в документах Ember и я может узнать, как поставить службу на проверку для , а не просто загрузить службу в тесте и затем работать с ней.