blob: 5601b296bd4f9a6b07f45c9b0478dcf4080832a1 [file] [log] [blame]
/**
* @license Angular v8.1.1
* (c) 2010-2019 Google LLC. https://angular.io/
* License: MIT
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/platform-browser')) :
typeof define === 'function' && define.amd ? define('@angular/platform-browser/testing', ['exports', '@angular/core', '@angular/platform-browser'], factory) :
(global = global || self, factory((global.ng = global.ng || {}, global.ng.platformBrowser = global.ng.platformBrowser || {}, global.ng.platformBrowser.testing = {}), global.ng.core, global.ng.platformBrowser));
}(this, function (exports, core, platformBrowser) { 'use strict';
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
function __decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
/**
* @license
* Copyright Google Inc. 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
*/
var BrowserDetection = /** @class */ (function () {
function BrowserDetection(ua) {
this._overrideUa = ua;
}
Object.defineProperty(BrowserDetection.prototype, "_ua", {
get: function () {
if (typeof this._overrideUa === 'string') {
return this._overrideUa;
}
return platformBrowsergetDOM() ? platformBrowsergetDOM().getUserAgent() : '';
},
enumerable: true,
configurable: true
});
BrowserDetection.setup = function () { };
Object.defineProperty(BrowserDetection.prototype, "isFirefox", {
get: function () { return this._ua.indexOf('Firefox') > -1; },
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isAndroid", {
get: function () {
return this._ua.indexOf('Mozilla/5.0') > -1 && this._ua.indexOf('Android') > -1 &&
this._ua.indexOf('AppleWebKit') > -1 && this._ua.indexOf('Chrome') == -1 &&
this._ua.indexOf('IEMobile') == -1;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isEdge", {
get: function () { return this._ua.indexOf('Edge') > -1; },
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isIE", {
get: function () { return this._ua.indexOf('Trident') > -1; },
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isWebkit", {
get: function () {
return this._ua.indexOf('AppleWebKit') > -1 && this._ua.indexOf('Edge') == -1 &&
this._ua.indexOf('IEMobile') == -1;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isIOS7", {
get: function () {
return (this._ua.indexOf('iPhone OS 7') > -1 || this._ua.indexOf('iPad OS 7') > -1) &&
this._ua.indexOf('IEMobile') == -1;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isSlow", {
get: function () { return this.isAndroid || this.isIE || this.isIOS7; },
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "supportsNativeIntlApi", {
// The Intl API is only natively supported in Chrome, Firefox, IE11 and Edge.
// This detector is needed in tests to make the difference between:
// 1) IE11/Edge: they have a native Intl API, but with some discrepancies
// 2) IE9/IE10: they use the polyfill, and so no discrepancies
get: function () {
return !!coreglobal.Intl && coreglobal.Intl !== coreglobal.IntlPolyfill;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isChromeDesktop", {
get: function () {
return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Mobile Safari') == -1 &&
this._ua.indexOf('Edge') == -1;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "isOldChrome", {
// "Old Chrome" means Chrome 3X, where there are some discrepancies in the Intl API.
// Android 4.4 and 5.X have such browsers by default (respectively 30 and 39).
get: function () {
return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Chrome/3') > -1 &&
this._ua.indexOf('Edge') == -1;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "supportsCustomElements", {
get: function () { return (typeof coreglobal.customElements !== 'undefined'); },
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "supportsDeprecatedCustomCustomElementsV0", {
get: function () {
return (typeof document.registerElement !== 'undefined');
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "supportsRegExUnicodeFlag", {
get: function () { return RegExp.prototype.hasOwnProperty('unicode'); },
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "supportsShadowDom", {
get: function () {
var testEl = document.createElement('div');
return (typeof testEl.attachShadow !== 'undefined');
},
enumerable: true,
configurable: true
});
Object.defineProperty(BrowserDetection.prototype, "supportsDeprecatedShadowDomV0", {
get: function () {
var testEl = document.createElement('div');
return (typeof testEl.createShadowRoot !== 'undefined');
},
enumerable: true,
configurable: true
});
return BrowserDetection;
}());
BrowserDetection.setup();
function createNgZone() {
return new core.NgZone({ enableLongStackTrace: true });
}
function initBrowserTests() {
platformBrowserBrowserDomAdapter.makeCurrent();
BrowserDetection.setup();
}
var _TEST_BROWSER_PLATFORM_PROVIDERS = [{ provide: core.PLATFORM_INITIALIZER, useValue: initBrowserTests, multi: true }];
/**
* Platform for testing
*
* @publicApi
*/
var platformBrowserTesting = core.createPlatformFactory(core.platformCore, 'browserTesting', _TEST_BROWSER_PLATFORM_PROVIDERS);
var ɵ0 = createNgZone;
/**
* NgModule for testing.
*
* @publicApi
*/
var BrowserTestingModule = /** @class */ (function () {
function BrowserTestingModule() {
}
BrowserTestingModule = __decorate([
core.NgModule({
exports: [platformBrowser.BrowserModule],
providers: [
{ provide: core.APP_ID, useValue: 'a' },
platformBrowserELEMENT_PROBE_PROVIDERS,
{ provide: core.NgZone, useFactory: ɵ0 },
]
})
], BrowserTestingModule);
return BrowserTestingModule;
}());
/**
* @license
* Copyright Google Inc. 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
*/
/**
* @license
* Copyright Google Inc. 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
*/
/**
* @license
* Copyright Google Inc. 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
*/
/**
* Generated bundle index. Do not edit.
*/
exportsangular_packages_platform_browser_testing_testing_a = createNgZone;
exports.platformBrowserTesting = platformBrowserTesting;
exports.BrowserTestingModule = BrowserTestingModule;
exports0 = ɵ0;
Object.defineProperty(exports, '__esModule', { value: true });
}));
//# sourceMappingURL=platform-browser-testing.umd.js.map