Skip to content

Commit bf3be56

Browse files
alan-agius4angular-robot[bot]
authored andcommitted
fix(@angular-devkit/build-angular): load polyfills and runtime as scripts instead of modules
This commit updates changes the way polyfills and runtime are loaded from modules to scripts. This is required as otherwise Jasmine will be loaded prior to Zone.js which causes clock patching not to work. Closes #24651
1 parent 175b716 commit bf3be56

File tree

3 files changed

+41
-4
lines changed

3 files changed

+41
-4
lines changed

packages/angular_devkit/build_angular/src/webpack/plugins/karma/karma-context.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@
3030
// All served files with the latest timestamps
3131
%MAPPINGS%
3232
</script>
33-
<script src="_karma_webpack_/runtime.js" crossorigin="anonymous" type="module"></script>
34-
<script src="_karma_webpack_/polyfills.js" crossorigin="anonymous" type="module"></script>
33+
<script src="_karma_webpack_/runtime.js" crossorigin="anonymous"></script>
34+
<script src="_karma_webpack_/polyfills.js" crossorigin="anonymous"></script>
3535
<!-- Dynamically replaced with <script> tags -->
3636
%SCRIPTS%
3737
<script src="_karma_webpack_/scripts.js" crossorigin="anonymous" defer></script>

packages/angular_devkit/build_angular/src/webpack/plugins/karma/karma-debug.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@
3232
// All served files with the latest timestamps
3333
%MAPPINGS%
3434
</script>
35-
<script src="_karma_webpack_/runtime.js" crossorigin="anonymous" type="module"></script>
36-
<script src="_karma_webpack_/polyfills.js" crossorigin="anonymous" type="module"></script>
35+
<script src="_karma_webpack_/runtime.js" crossorigin="anonymous"></script>
36+
<script src="_karma_webpack_/polyfills.js" crossorigin="anonymous"></script>
3737
<!-- Dynamically replaced with <script> tags -->
3838
%SCRIPTS%
3939
<script src="_karma_webpack_/scripts.js" crossorigin="anonymous" defer></script>
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import { ng } from '../../utils/process';
2+
import { writeFile } from '../../utils/fs';
3+
4+
export default async function () {
5+
await writeFile(
6+
'src/app/app.component.spec.ts',
7+
`
8+
import { TestBed } from '@angular/core/testing';
9+
import { RouterTestingModule } from '@angular/router/testing';
10+
import { AppComponent } from './app.component';
11+
12+
describe('AppComponent', () => {
13+
beforeAll(() => {
14+
jasmine.clock().install();
15+
});
16+
17+
afterAll(() => {
18+
jasmine.clock().uninstall();
19+
});
20+
21+
beforeEach(async () => {
22+
await TestBed.configureTestingModule({
23+
imports: [RouterTestingModule],
24+
declarations: [AppComponent],
25+
}).compileComponents();
26+
});
27+
28+
it('should create the app', () => {
29+
const fixture = TestBed.createComponent(AppComponent);
30+
expect(fixture.componentInstance).toBeTruthy();
31+
});
32+
});
33+
`,
34+
);
35+
36+
await ng('test', '--watch=false');
37+
}

0 commit comments

Comments
 (0)