58 lines
1.7 KiB
TypeScript
58 lines
1.7 KiB
TypeScript
import { readJson, readNxJson } from '@nx/devkit';
|
|
import { createTreeWithEmptyWorkspace } from '@nx/devkit/testing';
|
|
import { Linter } from '@nx/linter';
|
|
import remote from './remote';
|
|
|
|
describe('remote generator', () => {
|
|
it('should install @nx/web for the file-server executor', async () => {
|
|
const tree = createTreeWithEmptyWorkspace({ layout: 'apps-libs' });
|
|
await remote(tree, {
|
|
name: 'test',
|
|
devServerPort: 4201,
|
|
e2eTestRunner: 'cypress',
|
|
linter: Linter.EsLint,
|
|
skipFormat: false,
|
|
style: 'css',
|
|
unitTestRunner: 'jest',
|
|
});
|
|
|
|
const packageJson = readJson(tree, 'package.json');
|
|
expect(packageJson.devDependencies['@nx/web']).toBeDefined();
|
|
});
|
|
|
|
it('should not set the remote as the default project', async () => {
|
|
const tree = createTreeWithEmptyWorkspace({ layout: 'apps-libs' });
|
|
await remote(tree, {
|
|
name: 'test',
|
|
devServerPort: 4201,
|
|
e2eTestRunner: 'cypress',
|
|
linter: Linter.EsLint,
|
|
skipFormat: false,
|
|
style: 'css',
|
|
unitTestRunner: 'jest',
|
|
});
|
|
|
|
const { defaultProject } = readNxJson(tree);
|
|
expect(defaultProject).toBeUndefined();
|
|
});
|
|
|
|
it('should generate a remote-specific server.ts file for --ssr', async () => {
|
|
const tree = createTreeWithEmptyWorkspace({ layout: 'apps-libs' });
|
|
|
|
await remote(tree, {
|
|
name: 'test',
|
|
devServerPort: 4201,
|
|
e2eTestRunner: 'cypress',
|
|
linter: Linter.EsLint,
|
|
skipFormat: false,
|
|
style: 'css',
|
|
unitTestRunner: 'jest',
|
|
ssr: true,
|
|
});
|
|
|
|
const mainFile = tree.read('apps/test/server.ts', 'utf-8');
|
|
expect(mainFile).toContain(`join(process.cwd(), 'dist/apps/test/browser')`);
|
|
expect(mainFile).toContain('nx.server.ready');
|
|
});
|
|
});
|