Skip to content

Commit 9d973d6

Browse files
committed
test(@angular-devkit/build-angular) use port 0 to fix flakey test
1 parent 307362a commit 9d973d6

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

packages/angular_devkit/build_angular/src/dev-server/inline-critical-css-optimization_spec.ts

+14-7
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
*/
88

99
import { Architect, BuilderRun } from '@angular-devkit/architect';
10-
import { DevServerBuilderOutput } from '@angular-devkit/build-angular';
1110
import fetch from 'node-fetch'; // tslint:disable-line:no-implicit-dependencies
11+
import { mergeMap, take, timeout } from 'rxjs/operators';
1212
import { createArchitect, host } from '../test-utils';
1313

1414
describe('Dev Server Builder inline critical CSS optimization', () => {
@@ -34,11 +34,18 @@ describe('Dev Server Builder inline critical CSS optimization', () => {
3434
});
3535

3636
it('works', async () => {
37-
const run = await architect.scheduleTarget(target, { browserTarget: 'app:build:production,inline-critical-css' });
37+
const run = await architect.scheduleTarget(target, { browserTarget: 'app:build:production,inline-critical-css', port: 0 });
3838
runs.push(run);
39-
const output = await run.result as DevServerBuilderOutput;
40-
expect(output.success).toBe(true);
41-
const response = await fetch(`${output.baseUrl}/index.html`);
42-
expect(await response.text()).toContain(`body{color:#000;}`);
43-
}, 30000);
39+
40+
await run.output.pipe(
41+
take(1),
42+
timeout(39000),
43+
mergeMap(async output => {
44+
expect(output.success).toBe(true);
45+
const response = await fetch(`${output.baseUrl}/index.html`);
46+
expect(await response.text()).toContain(`body{color:#000;}`);
47+
}),
48+
).toPromise();
49+
50+
}, 40000);
4451
});

0 commit comments

Comments
 (0)