diff --git a/angular.json b/angular.json index 34b6633f9..d4d624a90 100644 --- a/angular.json +++ b/angular.json @@ -209,7 +209,7 @@ "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", - "polyfills": "src/polyfills.ts", + "polyfills": ["zone.js", "zone.js/testing", "src/polyfills.ts"], "tsConfig": "src/tsconfig.spec.json", "preserveSymlinks": true, "karmaConfig": "src/karma.conf.js", diff --git a/src/app/features/project/project.service.spec.ts b/src/app/features/project/project.service.spec.ts index 6d88a3761..4c10aefa0 100644 --- a/src/app/features/project/project.service.spec.ts +++ b/src/app/features/project/project.service.spec.ts @@ -150,6 +150,11 @@ describe('ProjectService', () => { store.overrideSelector(selectNoteFeatureState, initialNoteState); }); + afterEach(() => { + // Reset selector mocks to prevent interference with other test files + store.resetSelectors(); + }); + it('should be created', () => { expect(service).toBeTruthy(); }); diff --git a/src/test.ts b/src/test.ts index d9eba7ef8..d45aa445b 100644 --- a/src/test.ts +++ b/src/test.ts @@ -1,7 +1,8 @@ // This file is required by karma.conf.js and loads recursively all the .spec and framework files -import 'zone.js'; -import 'zone.js/testing'; +// NOTE: Do NOT import 'zone.js' or 'zone.js/testing' here explicitly. +// Angular's karma builder handles Zone.js setup automatically. +// Adding explicit imports causes conflicts with Jasmine's clock mocking. import { getTestBed, TestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule,