UNPKG

ng-alain

Version:

Schematics specific to NG-ALAIN

45 lines (39 loc) 1.56 kB
import { SchematicTestRunner, UnitTestTree } from '@angular-devkit/schematics/testing'; import { addValueToVariable, CommonSchema } from './alain'; import { createAlainAndModuleApp } from '../utils/testing'; describe('Schematic: alain', () => { let runner: SchematicTestRunner; let tree: UnitTestTree; beforeEach(async () => { ({ runner, tree } = await createAlainAndModuleApp()); }); it('#addValueToVariable', () => { const fileName = '1.ts'; const newComponentName = 'AComponent'; tree.create( fileName, ` const COMPONENTS = [Components...]; ` ); addValueToVariable(tree, fileName, 'COMPONENTS', newComponentName, false); const content = tree.readContent(fileName); expect(content.includes(`Components...,AComponent`)).toBe(true); }); describe('#withoutModulePrefixInComponentName', () => { it('with true', async () => { tree = await runner.runSchematic( 'empty', { name: 'list', module: 'trade', withoutModulePrefixInComponentName: true } as CommonSchema, tree ); const listTsCon = tree.readContent(`/projects/foo/src/app/routes/trade/list/list.component.ts`); expect(listTsCon).toContain(`ListComponent`); }); it('with false', async () => { tree = await runner.runSchematic('empty', { name: 'list', module: 'trade' } as CommonSchema, tree); const listTsCon = tree.readContent(`/projects/foo/src/app/routes/trade/list/list.component.ts`); expect(listTsCon).toContain(`TradeListComponent`); }); }); });