mirror of
https://github.com/angular/angular-cli.git
synced 2025-05-16 18:43:42 +08:00
test: split module resolutions E2E in multiple tests
This test does a large number of builds by spliting the tests, in CI we can reduce the blocking time for other tests. Locally this tests take ~3 mins in CI.
This commit is contained in:
parent
e41dc3e5fe
commit
e2c7502730
@ -1,84 +0,0 @@
|
|||||||
import { appendToFile, createDir, moveFile, prependToFile } from '../../utils/fs';
|
|
||||||
import { installPackage } from '../../utils/packages';
|
|
||||||
import { ng } from '../../utils/process';
|
|
||||||
import { updateJsonFile } from '../../utils/project';
|
|
||||||
import { expectToFail } from '../../utils/utils';
|
|
||||||
|
|
||||||
export default async function () {
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {
|
|
||||||
'*': ['./node_modules/*'],
|
|
||||||
};
|
|
||||||
});
|
|
||||||
await ng('build', '--configuration=development');
|
|
||||||
|
|
||||||
await createDir('xyz');
|
|
||||||
await moveFile('node_modules/@angular/common', 'xyz/common');
|
|
||||||
|
|
||||||
await expectToFail(() => ng('build', '--configuration=development'));
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {
|
|
||||||
'@angular/common': ['./xyz/common'],
|
|
||||||
};
|
|
||||||
});
|
|
||||||
await ng('build', '--configuration=development');
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {
|
|
||||||
'*': ['./node_modules/*'],
|
|
||||||
'@angular/common': ['./xyz/common'],
|
|
||||||
};
|
|
||||||
});
|
|
||||||
await ng('build', '--configuration=development');
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {
|
|
||||||
'@angular/common': ['./xyz/common'],
|
|
||||||
'*': ['./node_modules/*'],
|
|
||||||
};
|
|
||||||
});
|
|
||||||
await ng('build', '--configuration=development');
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
delete tsconfig.compilerOptions.paths;
|
|
||||||
});
|
|
||||||
|
|
||||||
await prependToFile('src/app/app.module.ts', "import * as firebase from 'firebase';");
|
|
||||||
await appendToFile('src/app/app.module.ts', 'firebase.initializeApp({});');
|
|
||||||
|
|
||||||
await installPackage('firebase@3.7.8');
|
|
||||||
await ng('build', '--aot', '--configuration=development');
|
|
||||||
await ng('test', '--watch=false');
|
|
||||||
|
|
||||||
await installPackage('firebase@4.9.0');
|
|
||||||
await ng('build', '--aot', '--configuration=development');
|
|
||||||
await ng('test', '--watch=false');
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {};
|
|
||||||
});
|
|
||||||
await ng('build', '--configuration=development');
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {
|
|
||||||
'@app/*': ['*'],
|
|
||||||
'@lib/*/test': ['*/test'],
|
|
||||||
};
|
|
||||||
});
|
|
||||||
await ng('build', '--configuration=development');
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {
|
|
||||||
'@firebase/polyfill': ['./node_modules/@firebase/polyfill/index.ts'],
|
|
||||||
};
|
|
||||||
});
|
|
||||||
await expectToFail(() => ng('build', '--configuration=development'));
|
|
||||||
|
|
||||||
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
|
||||||
tsconfig.compilerOptions.paths = {
|
|
||||||
'@firebase/polyfill*': ['./node_modules/@firebase/polyfill/index.ts'],
|
|
||||||
};
|
|
||||||
});
|
|
||||||
await expectToFail(() => ng('build', '--configuration=development'));
|
|
||||||
}
|
|
@ -0,0 +1,41 @@
|
|||||||
|
import { createDir, moveFile } from '../../../utils/fs';
|
||||||
|
import { ng } from '../../../utils/process';
|
||||||
|
import { updateJsonFile } from '../../../utils/project';
|
||||||
|
import { expectToFail } from '../../../utils/utils';
|
||||||
|
|
||||||
|
export default async function () {
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {
|
||||||
|
'*': ['./node_modules/*'],
|
||||||
|
};
|
||||||
|
});
|
||||||
|
await ng('build', '--configuration=development');
|
||||||
|
|
||||||
|
await createDir('xyz');
|
||||||
|
await moveFile('node_modules/@angular/common', 'xyz/common');
|
||||||
|
await expectToFail(() => ng('build', '--configuration=development'));
|
||||||
|
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {
|
||||||
|
'@angular/common': ['./xyz/common'],
|
||||||
|
};
|
||||||
|
});
|
||||||
|
await ng('build', '--configuration=development');
|
||||||
|
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {
|
||||||
|
'*': ['./node_modules/*'],
|
||||||
|
'@angular/common': ['./xyz/common'],
|
||||||
|
};
|
||||||
|
});
|
||||||
|
await ng('build', '--configuration=development');
|
||||||
|
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {
|
||||||
|
'@angular/common': ['./xyz/common'],
|
||||||
|
'*': ['./node_modules/*'],
|
||||||
|
};
|
||||||
|
});
|
||||||
|
await ng('build', '--configuration=development');
|
||||||
|
await moveFile('xyz/common', 'node_modules/@angular/common');
|
||||||
|
}
|
@ -0,0 +1,45 @@
|
|||||||
|
import { appendToFile, prependToFile } from '../../../utils/fs';
|
||||||
|
import { installPackage } from '../../../utils/packages';
|
||||||
|
import { ng } from '../../../utils/process';
|
||||||
|
import { updateJsonFile } from '../../../utils/project';
|
||||||
|
import { expectToFail } from '../../../utils/utils';
|
||||||
|
|
||||||
|
export default async function () {
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
delete tsconfig.compilerOptions.paths;
|
||||||
|
});
|
||||||
|
|
||||||
|
await prependToFile('src/app/app.module.ts', "import * as firebase from 'firebase';");
|
||||||
|
await appendToFile('src/app/app.module.ts', 'firebase.initializeApp({});');
|
||||||
|
|
||||||
|
await installPackage('firebase@4.9.0');
|
||||||
|
await ng('build', '--aot', '--configuration=development');
|
||||||
|
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {};
|
||||||
|
});
|
||||||
|
|
||||||
|
await ng('build', '--configuration=development');
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {
|
||||||
|
'@app/*': ['*'],
|
||||||
|
'@lib/*/test': ['*/test'],
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
await ng('build', '--configuration=development');
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {
|
||||||
|
'@firebase/polyfill': ['./node_modules/@firebase/polyfill/index.ts'],
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
await expectToFail(() => ng('build', '--configuration=development'));
|
||||||
|
|
||||||
|
await updateJsonFile('tsconfig.json', (tsconfig) => {
|
||||||
|
tsconfig.compilerOptions.paths = {
|
||||||
|
'@firebase/polyfill*': ['./node_modules/@firebase/polyfill/index.ts'],
|
||||||
|
};
|
||||||
|
});
|
||||||
|
await expectToFail(() => ng('build', '--configuration=development'));
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user