mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
Since Karma with Bazel does not support ESM natively, we bundle the tests using ESBuild into a single AMD file. This not only solves the ESM issue until we can run browser ESM tests natively (also pending in the components repo - the esbuild generation follows ESM semantics but since collapsed we don't rely on the real module system). A benefit of bundling is also faster and more reliable Karma browser tests since only a single file needs to be loaded- compared to hundreds of individual files. PR Close #48521
25 lines
940 B
TypeScript
25 lines
940 B
TypeScript
/**
|
|
* @license
|
|
* Copyright Google LLC All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.io/license
|
|
*/
|
|
|
|
import 'zone.js/lib/node/rollup-main';
|
|
import './zone_base_setup';
|
|
|
|
(global as any).isNode = true;
|
|
(global as any).isBrowser = false;
|
|
|
|
import '@angular/compiler'; // For JIT mode. Must be in front of any other @angular/* imports.
|
|
// Init TestBed
|
|
import {TestBed} from '@angular/core/testing';
|
|
import {ServerTestingModule, platformServerTesting} from '@angular/platform-server/testing/src/server';
|
|
import {DominoAdapter} from '@angular/platform-server/src/domino_adapter';
|
|
import domino from 'domino';
|
|
|
|
TestBed.initTestEnvironment(ServerTestingModule, platformServerTesting());
|
|
DominoAdapter.makeCurrent();
|
|
(global as any).document = (DominoAdapter as any).defaultDoc ||
|
|
((DominoAdapter as any).defaultDoc = domino.createDocument());
|