Я пытаюсь протестировать свою схему, которая требует некоторой начальной настройки других схем (создание рабочего пространства и приложения), и я хочу видеть только те изменения, которые вносит моя схема (но не изменения всего)
Установка:
// Create the workspace
appTree = runner.runExternalSchematic('@schematics/angular', 'workspace', workspaceOptions);
// Create the app
appTree = runner.runExternalSchematic('@schematics/angular', 'application', appOptions, appTree);
// Create a test component
appTree = runner.runExternalSchematic(
'@schematics/angular',
'component',
{name: 'foo', project: appOptions.name} as ComponentOptions,
appTree
);
После некоторого копания я обнаружил, что tree.actions
позволяет вам видеть, что изменилось на дереве, но показывает все действия (включая создание всего материала Angular)
Тест:
it('makes changes', () => {
// Do something to appTree to "commit" changes
const tree = runner.runSchematic('my-schematic', {}, appTree);
// I want `tree.actions` to just show the changes from 'my-schematic'
});
Мне нужен способ «зафиксировать» изменения в дереве после внесения всех изменений в настройку рабочей области, приложения и компонента, чтобы я мог просто просмотреть изменения и проверить их.
Есть ли что-то в наборе тестов Angular или в общем API-интерфейсе схем, которое позволило бы мне это сделать?