У меня есть единичный тест, который проверяет APP_ID приложения как фиксированное значение. Проблема в том, что я не знаю, как установить APP_ID, чтобы он не генерировался случайным образом.Нет провайдера для Token AppId
документация на веб-сайте команды Angular2 является полезным достаточно, но я не уверен, если я правильно интерпретировать его:
Если вам необходимо, чтобы избежать случайно сгенерированного значение, которое будет использоваться в качестве идентификатора приложения , вы можете предоставить настраиваемое значение через поставщика DI, настраивающего корневой инжектор, используя этот токен.
Так ли это означает, что я добавлю его в качестве поставщика в загрузочном устройстве моего приложения?
bootstrap(App, [
provide(APP_ID, {name: 'MyApp'})
]);
Я сомневаюсь, что он удаленно закрыт. Кто-нибудь еще понял, как установить APP_ID или что он даже используется?
injector.spec.ts
import {
it,
inject,
injectAsync,
beforeEachProviders,
TestComponentBuilder
} from 'angular2/testing';
import {APP_ID} from 'angular2/core';
describe('default test injector',() => {
it('should provide default id', inject([APP_ID], (id) => {
expect(id).toBe('MyApp');
}));
});
Ницца, хорошо знать, я не был Не слишком далеко. Можно ли импортировать файл, где происходит перезагрузка, вместо того, чтобы дублировать 'обеспечить (APP_ID, {useValue: '...'})' часть в 'beforeEachProviders'? – BrianRT
См. Http://stackoverflow.com/a/36354220/217408, как создавать поставщиков и использовать их повторно. –