UNPKG

28 kBJavaScriptView Raw
1/**
2 * @license Angular v10.0.6
3 * (c) 2010-2020 Google LLC. https://angular.io/
4 * License: MIT
5 */
6
7(function (global, factory) {
8 typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/platform-browser'), require('@angular/common')) :
9 typeof define === 'function' && define.amd ? define('@angular/platform-browser/testing', ['exports', '@angular/core', '@angular/platform-browser', '@angular/common'], factory) :
10 (global = global || self, factory((global.ng = global.ng || {}, global.ng.platformBrowser = global.ng.platformBrowser || {}, global.ng.platformBrowser.testing = {}), global.ng.core, global.ng.platformBrowser, global.ng.common));
11}(this, (function (exports, core, platformBrowser, common) { 'use strict';
12
13 /*! *****************************************************************************
14 Copyright (c) Microsoft Corporation.
15
16 Permission to use, copy, modify, and/or distribute this software for any
17 purpose with or without fee is hereby granted.
18
19 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
20 REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
21 AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
22 INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
23 LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
24 OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
25 PERFORMANCE OF THIS SOFTWARE.
26 ***************************************************************************** */
27 /* global Reflect, Promise */
28 var extendStatics = function (d, b) {
29 extendStatics = Object.setPrototypeOf ||
30 ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
31 function (d, b) { for (var p in b)
32 if (b.hasOwnProperty(p))
33 d[p] = b[p]; };
34 return extendStatics(d, b);
35 };
36 function __extends(d, b) {
37 extendStatics(d, b);
38 function __() { this.constructor = d; }
39 d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
40 }
41 var __assign = function () {
42 __assign = Object.assign || function __assign(t) {
43 for (var s, i = 1, n = arguments.length; i < n; i++) {
44 s = arguments[i];
45 for (var p in s)
46 if (Object.prototype.hasOwnProperty.call(s, p))
47 t[p] = s[p];
48 }
49 return t;
50 };
51 return __assign.apply(this, arguments);
52 };
53 function __rest(s, e) {
54 var t = {};
55 for (var p in s)
56 if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
57 t[p] = s[p];
58 if (s != null && typeof Object.getOwnPropertySymbols === "function")
59 for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
60 if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
61 t[p[i]] = s[p[i]];
62 }
63 return t;
64 }
65 function __decorate(decorators, target, key, desc) {
66 var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
67 if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
68 r = Reflect.decorate(decorators, target, key, desc);
69 else
70 for (var i = decorators.length - 1; i >= 0; i--)
71 if (d = decorators[i])
72 r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
73 return c > 3 && r && Object.defineProperty(target, key, r), r;
74 }
75 function __param(paramIndex, decorator) {
76 return function (target, key) { decorator(target, key, paramIndex); };
77 }
78 function __metadata(metadataKey, metadataValue) {
79 if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
80 return Reflect.metadata(metadataKey, metadataValue);
81 }
82 function __awaiter(thisArg, _arguments, P, generator) {
83 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
84 return new (P || (P = Promise))(function (resolve, reject) {
85 function fulfilled(value) { try {
86 step(generator.next(value));
87 }
88 catch (e) {
89 reject(e);
90 } }
91 function rejected(value) { try {
92 step(generator["throw"](value));
93 }
94 catch (e) {
95 reject(e);
96 } }
97 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
98 step((generator = generator.apply(thisArg, _arguments || [])).next());
99 });
100 }
101 function __generator(thisArg, body) {
102 var _ = { label: 0, sent: function () { if (t[0] & 1)
103 throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
104 return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
105 function verb(n) { return function (v) { return step([n, v]); }; }
106 function step(op) {
107 if (f)
108 throw new TypeError("Generator is already executing.");
109 while (_)
110 try {
111 if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
112 return t;
113 if (y = 0, t)
114 op = [op[0] & 2, t.value];
115 switch (op[0]) {
116 case 0:
117 case 1:
118 t = op;
119 break;
120 case 4:
121 _.label++;
122 return { value: op[1], done: false };
123 case 5:
124 _.label++;
125 y = op[1];
126 op = [0];
127 continue;
128 case 7:
129 op = _.ops.pop();
130 _.trys.pop();
131 continue;
132 default:
133 if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
134 _ = 0;
135 continue;
136 }
137 if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
138 _.label = op[1];
139 break;
140 }
141 if (op[0] === 6 && _.label < t[1]) {
142 _.label = t[1];
143 t = op;
144 break;
145 }
146 if (t && _.label < t[2]) {
147 _.label = t[2];
148 _.ops.push(op);
149 break;
150 }
151 if (t[2])
152 _.ops.pop();
153 _.trys.pop();
154 continue;
155 }
156 op = body.call(thisArg, _);
157 }
158 catch (e) {
159 op = [6, e];
160 y = 0;
161 }
162 finally {
163 f = t = 0;
164 }
165 if (op[0] & 5)
166 throw op[1];
167 return { value: op[0] ? op[1] : void 0, done: true };
168 }
169 }
170 var __createBinding = Object.create ? (function (o, m, k, k2) {
171 if (k2 === undefined)
172 k2 = k;
173 Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
174 }) : (function (o, m, k, k2) {
175 if (k2 === undefined)
176 k2 = k;
177 o[k2] = m[k];
178 });
179 function __exportStar(m, exports) {
180 for (var p in m)
181 if (p !== "default" && !exports.hasOwnProperty(p))
182 __createBinding(exports, m, p);
183 }
184 function __values(o) {
185 var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
186 if (m)
187 return m.call(o);
188 if (o && typeof o.length === "number")
189 return {
190 next: function () {
191 if (o && i >= o.length)
192 o = void 0;
193 return { value: o && o[i++], done: !o };
194 }
195 };
196 throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
197 }
198 function __read(o, n) {
199 var m = typeof Symbol === "function" && o[Symbol.iterator];
200 if (!m)
201 return o;
202 var i = m.call(o), r, ar = [], e;
203 try {
204 while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
205 ar.push(r.value);
206 }
207 catch (error) {
208 e = { error: error };
209 }
210 finally {
211 try {
212 if (r && !r.done && (m = i["return"]))
213 m.call(i);
214 }
215 finally {
216 if (e)
217 throw e.error;
218 }
219 }
220 return ar;
221 }
222 function __spread() {
223 for (var ar = [], i = 0; i < arguments.length; i++)
224 ar = ar.concat(__read(arguments[i]));
225 return ar;
226 }
227 function __spreadArrays() {
228 for (var s = 0, i = 0, il = arguments.length; i < il; i++)
229 s += arguments[i].length;
230 for (var r = Array(s), k = 0, i = 0; i < il; i++)
231 for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
232 r[k] = a[j];
233 return r;
234 }
235 ;
236 function __await(v) {
237 return this instanceof __await ? (this.v = v, this) : new __await(v);
238 }
239 function __asyncGenerator(thisArg, _arguments, generator) {
240 if (!Symbol.asyncIterator)
241 throw new TypeError("Symbol.asyncIterator is not defined.");
242 var g = generator.apply(thisArg, _arguments || []), i, q = [];
243 return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
244 function verb(n) { if (g[n])
245 i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
246 function resume(n, v) { try {
247 step(g[n](v));
248 }
249 catch (e) {
250 settle(q[0][3], e);
251 } }
252 function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
253 function fulfill(value) { resume("next", value); }
254 function reject(value) { resume("throw", value); }
255 function settle(f, v) { if (f(v), q.shift(), q.length)
256 resume(q[0][0], q[0][1]); }
257 }
258 function __asyncDelegator(o) {
259 var i, p;
260 return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
261 function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
262 }
263 function __asyncValues(o) {
264 if (!Symbol.asyncIterator)
265 throw new TypeError("Symbol.asyncIterator is not defined.");
266 var m = o[Symbol.asyncIterator], i;
267 return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
268 function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
269 function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
270 }
271 function __makeTemplateObject(cooked, raw) {
272 if (Object.defineProperty) {
273 Object.defineProperty(cooked, "raw", { value: raw });
274 }
275 else {
276 cooked.raw = raw;
277 }
278 return cooked;
279 }
280 ;
281 var __setModuleDefault = Object.create ? (function (o, v) {
282 Object.defineProperty(o, "default", { enumerable: true, value: v });
283 }) : function (o, v) {
284 o["default"] = v;
285 };
286 function __importStar(mod) {
287 if (mod && mod.__esModule)
288 return mod;
289 var result = {};
290 if (mod != null)
291 for (var k in mod)
292 if (Object.hasOwnProperty.call(mod, k))
293 __createBinding(result, mod, k);
294 __setModuleDefault(result, mod);
295 return result;
296 }
297 function __importDefault(mod) {
298 return (mod && mod.__esModule) ? mod : { default: mod };
299 }
300 function __classPrivateFieldGet(receiver, privateMap) {
301 if (!privateMap.has(receiver)) {
302 throw new TypeError("attempted to get private field on non-instance");
303 }
304 return privateMap.get(receiver);
305 }
306 function __classPrivateFieldSet(receiver, privateMap, value) {
307 if (!privateMap.has(receiver)) {
308 throw new TypeError("attempted to set private field on non-instance");
309 }
310 privateMap.set(receiver, value);
311 return value;
312 }
313
314 var BrowserDetection = /** @class */ (function () {
315 function BrowserDetection(ua) {
316 this._overrideUa = ua;
317 }
318 Object.defineProperty(BrowserDetection.prototype, "_ua", {
319 get: function () {
320 if (typeof this._overrideUa === 'string') {
321 return this._overrideUa;
322 }
323 return common.ɵgetDOM() ? common.ɵgetDOM().getUserAgent() : '';
324 },
325 enumerable: false,
326 configurable: true
327 });
328 BrowserDetection.setup = function () {
329 return new BrowserDetection(null);
330 };
331 Object.defineProperty(BrowserDetection.prototype, "isFirefox", {
332 get: function () {
333 return this._ua.indexOf('Firefox') > -1;
334 },
335 enumerable: false,
336 configurable: true
337 });
338 Object.defineProperty(BrowserDetection.prototype, "isAndroid", {
339 get: function () {
340 return this._ua.indexOf('Mozilla/5.0') > -1 && this._ua.indexOf('Android') > -1 &&
341 this._ua.indexOf('AppleWebKit') > -1 && this._ua.indexOf('Chrome') == -1 &&
342 this._ua.indexOf('IEMobile') == -1;
343 },
344 enumerable: false,
345 configurable: true
346 });
347 Object.defineProperty(BrowserDetection.prototype, "isEdge", {
348 get: function () {
349 return this._ua.indexOf('Edge') > -1;
350 },
351 enumerable: false,
352 configurable: true
353 });
354 Object.defineProperty(BrowserDetection.prototype, "isIE", {
355 get: function () {
356 return this._ua.indexOf('Trident') > -1;
357 },
358 enumerable: false,
359 configurable: true
360 });
361 Object.defineProperty(BrowserDetection.prototype, "isWebkit", {
362 get: function () {
363 return this._ua.indexOf('AppleWebKit') > -1 && this._ua.indexOf('Edge') == -1 &&
364 this._ua.indexOf('IEMobile') == -1;
365 },
366 enumerable: false,
367 configurable: true
368 });
369 Object.defineProperty(BrowserDetection.prototype, "isIOS7", {
370 get: function () {
371 return (this._ua.indexOf('iPhone OS 7') > -1 || this._ua.indexOf('iPad OS 7') > -1) &&
372 this._ua.indexOf('IEMobile') == -1;
373 },
374 enumerable: false,
375 configurable: true
376 });
377 Object.defineProperty(BrowserDetection.prototype, "isSlow", {
378 get: function () {
379 return this.isAndroid || this.isIE || this.isIOS7;
380 },
381 enumerable: false,
382 configurable: true
383 });
384 Object.defineProperty(BrowserDetection.prototype, "supportsNativeIntlApi", {
385 // The Intl API is only natively supported in Chrome, Firefox, IE11 and Edge.
386 // This detector is needed in tests to make the difference between:
387 // 1) IE11/Edge: they have a native Intl API, but with some discrepancies
388 // 2) IE9/IE10: they use the polyfill, and so no discrepancies
389 get: function () {
390 return !!core.ɵglobal.Intl && core.ɵglobal.Intl !== core.ɵglobal.IntlPolyfill;
391 },
392 enumerable: false,
393 configurable: true
394 });
395 Object.defineProperty(BrowserDetection.prototype, "isChromeDesktop", {
396 get: function () {
397 return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Mobile Safari') == -1 &&
398 this._ua.indexOf('Edge') == -1;
399 },
400 enumerable: false,
401 configurable: true
402 });
403 Object.defineProperty(BrowserDetection.prototype, "isOldChrome", {
404 // "Old Chrome" means Chrome 3X, where there are some discrepancies in the Intl API.
405 // Android 4.4 and 5.X have such browsers by default (respectively 30 and 39).
406 get: function () {
407 return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Chrome/3') > -1 &&
408 this._ua.indexOf('Edge') == -1;
409 },
410 enumerable: false,
411 configurable: true
412 });
413 Object.defineProperty(BrowserDetection.prototype, "supportsCustomElements", {
414 get: function () {
415 return (typeof core.ɵglobal.customElements !== 'undefined');
416 },
417 enumerable: false,
418 configurable: true
419 });
420 Object.defineProperty(BrowserDetection.prototype, "supportsDeprecatedCustomCustomElementsV0", {
421 get: function () {
422 return (typeof document.registerElement !== 'undefined');
423 },
424 enumerable: false,
425 configurable: true
426 });
427 Object.defineProperty(BrowserDetection.prototype, "supportsRegExUnicodeFlag", {
428 get: function () {
429 return RegExp.prototype.hasOwnProperty('unicode');
430 },
431 enumerable: false,
432 configurable: true
433 });
434 Object.defineProperty(BrowserDetection.prototype, "supportsShadowDom", {
435 get: function () {
436 var testEl = document.createElement('div');
437 return (typeof testEl.attachShadow !== 'undefined');
438 },
439 enumerable: false,
440 configurable: true
441 });
442 Object.defineProperty(BrowserDetection.prototype, "supportsDeprecatedShadowDomV0", {
443 get: function () {
444 var testEl = document.createElement('div');
445 return (typeof testEl.createShadowRoot !== 'undefined');
446 },
447 enumerable: false,
448 configurable: true
449 });
450 return BrowserDetection;
451 }());
452 var browserDetection = BrowserDetection.setup();
453 function dispatchEvent(element, eventType) {
454 var evt = common.ɵgetDOM().getDefaultDocument().createEvent('Event');
455 evt.initEvent(eventType, true, true);
456 common.ɵgetDOM().dispatchEvent(element, evt);
457 }
458 function createMouseEvent(eventType) {
459 var evt = common.ɵgetDOM().getDefaultDocument().createEvent('MouseEvent');
460 evt.initEvent(eventType, true, true);
461 return evt;
462 }
463 function el(html) {
464 return getContent(createTemplate(html)).firstChild;
465 }
466 function normalizeCSS(css) {
467 return css.replace(/\s+/g, ' ')
468 .replace(/:\s/g, ':')
469 .replace(/'/g, '"')
470 .replace(/ }/g, '}')
471 .replace(/url\((\"|\s)(.+)(\"|\s)\)(\s*)/g, function () {
472 var match = [];
473 for (var _i = 0; _i < arguments.length; _i++) {
474 match[_i] = arguments[_i];
475 }
476 return "url(\"" + match[2] + "\")";
477 })
478 .replace(/\[(.+)=([^"\]]+)\]/g, function () {
479 var match = [];
480 for (var _i = 0; _i < arguments.length; _i++) {
481 match[_i] = arguments[_i];
482 }
483 return "[" + match[1] + "=\"" + match[2] + "\"]";
484 });
485 }
486 function getAttributeMap(element) {
487 var res = new Map();
488 var elAttrs = element.attributes;
489 for (var i = 0; i < elAttrs.length; i++) {
490 var attrib = elAttrs.item(i);
491 res.set(attrib.name, attrib.value);
492 }
493 return res;
494 }
495 var _selfClosingTags = ['br', 'hr', 'input'];
496 function stringifyElement(el /** TODO #9100 */) {
497 var e_1, _a;
498 var result = '';
499 if (common.ɵgetDOM().isElementNode(el)) {
500 var tagName = el.tagName.toLowerCase();
501 // Opening tag
502 result += "<" + tagName;
503 // Attributes in an ordered way
504 var attributeMap = getAttributeMap(el);
505 var sortedKeys = Array.from(attributeMap.keys()).sort();
506 try {
507 for (var sortedKeys_1 = __values(sortedKeys), sortedKeys_1_1 = sortedKeys_1.next(); !sortedKeys_1_1.done; sortedKeys_1_1 = sortedKeys_1.next()) {
508 var key = sortedKeys_1_1.value;
509 var lowerCaseKey = key.toLowerCase();
510 var attValue = attributeMap.get(key);
511 if (typeof attValue !== 'string') {
512 result += " " + lowerCaseKey;
513 }
514 else {
515 // Browsers order style rules differently. Order them alphabetically for consistency.
516 if (lowerCaseKey === 'style') {
517 attValue = attValue.split(/; ?/).filter(function (s) { return !!s; }).sort().map(function (s) { return s + ";"; }).join(' ');
518 }
519 result += " " + lowerCaseKey + "=\"" + attValue + "\"";
520 }
521 }
522 }
523 catch (e_1_1) { e_1 = { error: e_1_1 }; }
524 finally {
525 try {
526 if (sortedKeys_1_1 && !sortedKeys_1_1.done && (_a = sortedKeys_1.return)) _a.call(sortedKeys_1);
527 }
528 finally { if (e_1) throw e_1.error; }
529 }
530 result += '>';
531 // Children
532 var childrenRoot = templateAwareRoot(el);
533 var children = childrenRoot ? childrenRoot.childNodes : [];
534 for (var j = 0; j < children.length; j++) {
535 result += stringifyElement(children[j]);
536 }
537 // Closing tag
538 if (_selfClosingTags.indexOf(tagName) == -1) {
539 result += "</" + tagName + ">";
540 }
541 }
542 else if (isCommentNode(el)) {
543 result += "<!--" + el.nodeValue + "-->";
544 }
545 else {
546 result += el.textContent;
547 }
548 return result;
549 }
550 function createNgZone() {
551 return new core.NgZone({ enableLongStackTrace: true, shouldCoalesceEventChangeDetection: false });
552 }
553 function isCommentNode(node) {
554 return node.nodeType === Node.COMMENT_NODE;
555 }
556 function isTextNode(node) {
557 return node.nodeType === Node.TEXT_NODE;
558 }
559 function getContent(node) {
560 if ('content' in node) {
561 return node.content;
562 }
563 else {
564 return node;
565 }
566 }
567 function templateAwareRoot(el) {
568 return common.ɵgetDOM().isElementNode(el) && el.nodeName === 'TEMPLATE' ? getContent(el) : el;
569 }
570 function setCookie(name, value) {
571 // document.cookie is magical, assigning into it assigns/overrides one cookie value, but does
572 // not clear other cookies.
573 document.cookie = encodeURIComponent(name) + '=' + encodeURIComponent(value);
574 }
575 function supportsWebAnimation() {
576 return typeof Element.prototype['animate'] === 'function';
577 }
578 function hasStyle(element, styleName, styleValue) {
579 var value = element.style[styleName] || '';
580 return styleValue ? value == styleValue : value.length > 0;
581 }
582 function hasClass(element, className) {
583 return element.classList.contains(className);
584 }
585 function sortedClassList(element) {
586 return Array.prototype.slice.call(element.classList, 0).sort();
587 }
588 function createTemplate(html) {
589 var t = common.ɵgetDOM().getDefaultDocument().createElement('template');
590 t.innerHTML = html;
591 return t;
592 }
593 function childNodesAsList(el) {
594 var childNodes = el.childNodes;
595 var res = [];
596 for (var i = 0; i < childNodes.length; i++) {
597 res[i] = childNodes[i];
598 }
599 return res;
600 }
601
602 /**
603 * @license
604 * Copyright Google LLC All Rights Reserved.
605 *
606 * Use of this source code is governed by an MIT-style license that can be
607 * found in the LICENSE file at https://angular.io/license
608 */
609 function initBrowserTests() {
610 platformBrowser.ɵBrowserDomAdapter.makeCurrent();
611 BrowserDetection.setup();
612 }
613 var _TEST_BROWSER_PLATFORM_PROVIDERS = [{ provide: core.PLATFORM_INITIALIZER, useValue: initBrowserTests, multi: true }];
614 /**
615 * Platform for testing
616 *
617 * @publicApi
618 */
619 var platformBrowserTesting = core.createPlatformFactory(core.platformCore, 'browserTesting', _TEST_BROWSER_PLATFORM_PROVIDERS);
620 var ɵ0 = createNgZone;
621 /**
622 * NgModule for testing.
623 *
624 * @publicApi
625 */
626 var BrowserTestingModule = /** @class */ (function () {
627 function BrowserTestingModule() {
628 }
629 return BrowserTestingModule;
630 }());
631 BrowserTestingModule.decorators = [
632 { type: core.NgModule, args: [{
633 exports: [platformBrowser.BrowserModule],
634 providers: [
635 { provide: core.APP_ID, useValue: 'a' },
636 platformBrowser.ɵELEMENT_PROBE_PROVIDERS,
637 { provide: core.NgZone, useFactory: ɵ0 },
638 ]
639 },] }
640 ];
641
642 /**
643 * @license
644 * Copyright Google LLC All Rights Reserved.
645 *
646 * Use of this source code is governed by an MIT-style license that can be
647 * found in the LICENSE file at https://angular.io/license
648 */
649
650 /**
651 * @license
652 * Copyright Google LLC All Rights Reserved.
653 *
654 * Use of this source code is governed by an MIT-style license that can be
655 * found in the LICENSE file at https://angular.io/license
656 */
657
658 /**
659 * @license
660 * Copyright Google LLC All Rights Reserved.
661 *
662 * Use of this source code is governed by an MIT-style license that can be
663 * found in the LICENSE file at https://angular.io/license
664 */
665
666 /**
667 * Generated bundle index. Do not edit.
668 */
669
670 exports.BrowserTestingModule = BrowserTestingModule;
671 exports.platformBrowserTesting = platformBrowserTesting;
672 exports.ɵ0 = ɵ0;
673 exports.ɵangular_packages_platform_browser_testing_testing_a = createNgZone;
674
675 Object.defineProperty(exports, '__esModule', { value: true });
676
677})));
678//# sourceMappingURL=platform-browser-testing.umd.js.map