Ожидаемое поведение при создании нового компонента с использованием angular-cli
заключается в том, что angular.json.projects
обновляется записью, описывающей вновь созданный компонент. Наблюдаемое поведение таково, что angular-cli
не делает этого.
Я узнал об этом после запуска ng test newComponent
и получения сообщения Project 'inline' does not support the 'test' target.
ng test newComponent
работал после того, как я обновил angular.json.projects
для описания вновь созданного компонента.
Я перевожу библиотеку компонентов Angular 2 в новую модель Angular 7 Workspace. Я создаю его с нуля, используя Тодд Палмер Серия Angular Library - Создание библиотеки с помощью Angular CLI рецепт.
Хотя рецепт не рекомендует тестировать только что созданный компонент, я делал и наблюдал описанную здесь неисправность.
Шаги для воспроизведения
- используя angular-cli@7.3.9 создать рабочее пространство библиотеки
ng new workspace --create-application=false
ng generate library library --prefix=abc
- Создайте приложение для тестирования, я называю это руководством по стилю жизни
ng generate application living-style-guide
- Создать новый компонент библиотеки
ng generate component newComponent —project=library
- Проверка создания компонента
ng test newComponent —project=library
Наблюдаемое поведение
Последняя команда завершается ошибкой со следующим сообщением
Project 'newComponent' does not support the 'test' target.
Error: Project 'newComponent' does not support the 'test' target.
at TestCommand.initialize (./node_modules/@angular/cli/models/architect-command.js:53:19)
at process._tickCallback (internal/process/next_tick.js:68:7)
at Function.Module.runMain (internal/modules/cjs/loader.js:757:11)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
Ожидаемое поведение
angular-cli обновляет объект angular.json с описанием вновь созданных компонентов библиотеки и прохождением их модульных тестов.