add polyfills for phantomjs

This commit is contained in:
Jake McDermott 2018-04-04 20:13:04 -04:00
parent b44c7127f7
commit 939666f172
No known key found for this signature in database
GPG Key ID: 3B02CAD476EECB35
4 changed files with 66 additions and 0 deletions

View File

@ -13,6 +13,7 @@ module.exports = config => {
frameworks: ['jasmine'],
reporters: ['progress', 'junit'],
files:[
'./polyfills.js',
path.join(SRC_PATH, '**/*.html'),
path.join(SRC_PATH, 'vendor.js'),
path.join(NODE_MODULES, 'angular-mocks/angular-mocks.js'),

View File

@ -0,0 +1,31 @@
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#Polyfill
if (typeof Object.assign != 'function') {
// Must be writable: true, enumerable: false, configurable: true
Object.defineProperty(Object, "assign", {
value: function assign(target, varArgs) { // .length of function is 2
'use strict';
if (target == null) { // TypeError if undefined or null
throw new TypeError('Cannot convert undefined or null to object');
}
var to = Object(target);
for (var index = 1; index < arguments.length; index++) {
var nextSource = arguments[index];
if (nextSource != null) { // Skip over if undefined or null
for (var nextKey in nextSource) {
// Avoid bugs when hasOwnProperty is shadowed
if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {
to[nextKey] = nextSource[nextKey];
}
}
}
}
return to;
},
writable: true,
configurable: true
});
}

View File

@ -14,6 +14,7 @@ module.exports = config => {
browsers: ['PhantomJS'],
reporters: ['progress', 'junit'],
files: [
'./polyfills.js',
path.join(SRC_PATH, 'vendor.js'),
path.join(SRC_PATH, 'app.js'),
path.join(SRC_PATH, '**/*.html'),

View File

@ -0,0 +1,33 @@
/* eslint-disable */
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#Polyfill
if (typeof Object.assign != 'function') {
// Must be writable: true, enumerable: false, configurable: true
Object.defineProperty(Object, "assign", {
value: function assign(target, varArgs) { // .length of function is 2
'use strict';
if (target == null) { // TypeError if undefined or null
throw new TypeError('Cannot convert undefined or null to object');
}
var to = Object(target);
for (var index = 1; index < arguments.length; index++) {
var nextSource = arguments[index];
if (nextSource != null) { // Skip over if undefined or null
for (var nextKey in nextSource) {
// Avoid bugs when hasOwnProperty is shadowed
if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {
to[nextKey] = nextSource[nextKey];
}
}
}
}
return to;
},
writable: true,
configurable: true
});
}