Check for syntax and standard library objects that don't work in IE

This commit is contained in:
Steve Gravrock
2020-07-01 17:28:45 -07:00
parent ba2aae63be
commit 4e2f703615
31 changed files with 159 additions and 125 deletions
@@ -1,3 +1,4 @@
/* eslint-disable compat/compat */
describe('toBePending', function() {
it('passes if the actual promise is pending', function() {
jasmine.getEnv().requirePromises();
@@ -1,3 +1,4 @@
/* eslint-disable compat/compat */
describe('toBeRejected', function() {
it('passes if the actual is rejected', function() {
jasmine.getEnv().requirePromises();
@@ -1,3 +1,4 @@
/* eslint-disable compat/compat */
describe('#toBeRejectedWithError', function () {
it('passes when Error type matches', function () {
jasmine.getEnv().requirePromises();
@@ -1,3 +1,4 @@
/* eslint-disable compat/compat */
describe('#toBeRejectedWith', function () {
it('should return true if the promise is rejected with the expected value', function () {
jasmine.getEnv().requirePromises();
@@ -1,3 +1,4 @@
/* eslint-disable compat/compat */
describe('toBeResolved', function() {
it('passes if the actual is resolved', function() {
jasmine.getEnv().requirePromises();
@@ -1,3 +1,4 @@
/* eslint-disable compat/compat */
describe('#toBeResolvedTo', function() {
it('passes if the promise is resolved to the expected value', function() {
jasmine.getEnv().requirePromises();
+34 -35
View File
@@ -282,8 +282,8 @@ describe("matchersUtil", function() {
it("passes for equivalent Promises (GitHub issue #1314)", function() {
if (typeof Promise === 'undefined') { return; }
var p1 = new Promise(function () {}),
p2 = new Promise(function () {}),
var p1 = new Promise(function () {}), // eslint-disable-line compat/compat
p2 = new Promise(function () {}), // eslint-disable-line compat/compat
matchersUtil = new jasmineUnderTest.MatchersUtil();
expect(matchersUtil.equals(p1, p1)).toBe(true);
@@ -418,10 +418,10 @@ describe("matchersUtil", function() {
jasmine.getEnv().requireFunctioningMaps();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var obj = new Map();
var obj = new Map(); // eslint-disable-line compat/compat
obj.set(1, 2);
obj.set('foo', 'bar');
var containing = new jasmineUnderTest.MapContaining(new Map());
var containing = new jasmineUnderTest.MapContaining(new Map()); // eslint-disable-line compat/compat
containing.sample.set('foo', 'bar');
expect(matchersUtil.equals(obj, containing)).toBe(true);
@@ -432,10 +432,10 @@ describe("matchersUtil", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var obj = new Set();
var obj = new Set(); // eslint-disable-line compat/compat
obj.add(1);
obj.add('foo');
var containing = new jasmineUnderTest.SetContaining(new Set());
var containing = new jasmineUnderTest.SetContaining(new Set()); // eslint-disable-line compat/compat
containing.sample.add(1);
expect(matchersUtil.equals(obj, containing)).toBe(true);
@@ -603,17 +603,17 @@ describe("matchersUtil", function() {
it("passes when comparing two empty sets", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
expect(matchersUtil.equals(new Set(), new Set())).toBe(true);
expect(matchersUtil.equals(new Set(), new Set())).toBe(true); // eslint-disable-line compat/compat
});
it("passes when comparing identical sets", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var setA = new Set();
var setA = new Set(); // eslint-disable-line compat/compat
setA.add(6);
setA.add(5);
var setB = new Set();
var setB = new Set(); // eslint-disable-line compat/compat
setB.add(6);
setB.add(5);
@@ -624,10 +624,10 @@ describe("matchersUtil", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var setA = new Set();
var setA = new Set(); // eslint-disable-line compat/compat
setA.add(3);
setA.add(6);
var setB = new Set();
var setB = new Set(); // eslint-disable-line compat/compat
setB.add(6);
setB.add(3);
@@ -638,24 +638,23 @@ describe("matchersUtil", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var setA1 = new Set();
var setA1 = new Set(); // eslint-disable-line compat/compat
setA1.add(['a',3]);
setA1.add([6,1]);
var setA2 = new Set();
var setA2 = new Set(); // eslint-disable-line compat/compat
setA1.add(['y',3]);
setA1.add([6,1]);
var setA = new Set();
var setA = new Set(); // eslint-disable-line compat/compat
setA.add(setA1);
setA.add(setA2);
var setB1 = new Set();
var setB1 = new Set(); // eslint-disable-line compat/compat
setB1.add([6,1]);
setB1.add(['a',3]);
var setB2 = new Set();
var setB2 = new Set(); // eslint-disable-line compat/compat
setB1.add([6,1]);
setB1.add(['y',3]);
var setB = new Set();
var setB = new Set(); // eslint-disable-line compat/compat
setB.add(setB1);
setB.add(setB2);
@@ -666,10 +665,10 @@ describe("matchersUtil", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var setA = new Set();
var setA = new Set(); // eslint-disable-line compat/compat
setA.add([[1,2], [3,4]]);
setA.add([[5,6], [7,8]]);
var setB = new Set();
var setB = new Set(); // eslint-disable-line compat/compat
setB.add([[5,6], [7,8]]);
setB.add([[1,2], [3,4]]);
@@ -679,11 +678,11 @@ describe("matchersUtil", function() {
it("fails for sets with different elements", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var setA = new Set();
var setA = new Set(); // eslint-disable-line compat/compat
setA.add(6);
setA.add(3);
setA.add(5);
var setB = new Set();
var setB = new Set(); // eslint-disable-line compat/compat
setB.add(6);
setB.add(4);
setB.add(5);
@@ -694,10 +693,10 @@ describe("matchersUtil", function() {
it("fails for sets of different size", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var setA = new Set();
var setA = new Set(); // eslint-disable-line compat/compat
setA.add(6);
setA.add(3);
var setB = new Set();
var setB = new Set(); // eslint-disable-line compat/compat
setB.add(6);
setB.add(4);
setB.add(5);
@@ -708,15 +707,15 @@ describe("matchersUtil", function() {
it("passes when comparing two empty maps", function() {
jasmine.getEnv().requireFunctioningMaps();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
expect(matchersUtil.equals(new Map(), new Map())).toBe(true);
expect(matchersUtil.equals(new Map(), new Map())).toBe(true); // eslint-disable-line compat/compat
});
it("passes when comparing identical maps", function() {
jasmine.getEnv().requireFunctioningMaps();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var mapA = new Map();
var mapA = new Map(); // eslint-disable-line compat/compat
mapA.set(6, 5);
var mapB = new Map();
var mapB = new Map(); // eslint-disable-line compat/compat
mapB.set(6, 5);
expect(matchersUtil.equals(mapA, mapB)).toBe(true);
});
@@ -724,10 +723,10 @@ describe("matchersUtil", function() {
it("passes when comparing identical maps with different insertion order", function() {
jasmine.getEnv().requireFunctioningMaps();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var mapA = new Map();
var mapA = new Map(); // eslint-disable-line compat/compat
mapA.set("a", 3);
mapA.set(6, 1);
var mapB = new Map();
var mapB = new Map(); // eslint-disable-line compat/compat
mapB.set(6, 1);
mapB.set("a", 3);
expect(matchersUtil.equals(mapA, mapB)).toBe(true);
@@ -736,10 +735,10 @@ describe("matchersUtil", function() {
it("fails for maps with different elements", function() {
jasmine.getEnv().requireFunctioningMaps();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var mapA = new Map();
var mapA = new Map(); // eslint-disable-line compat/compat
mapA.set(6, 3);
mapA.set(5, 1);
var mapB = new Map();
var mapB = new Map(); // eslint-disable-line compat/compat
mapB.set(6, 4);
mapB.set(5, 1);
@@ -749,9 +748,9 @@ describe("matchersUtil", function() {
it("fails for maps of different size", function() {
jasmine.getEnv().requireFunctioningMaps();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var mapA = new Map();
var mapA = new Map(); // eslint-disable-line compat/compat
mapA.set(6, 3);
var mapB = new Map();
var mapB = new Map(); // eslint-disable-line compat/compat
mapB.set(6, 4);
mapB.set(5, 1);
expect(matchersUtil.equals(mapA, mapB)).toBe(false);
@@ -937,7 +936,7 @@ describe("matchersUtil", function() {
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var setItem = {'foo': 'bar'};
var set = new Set();
var set = new Set(); // eslint-disable-line compat/compat
set.add(setItem);
expect(matchersUtil.contains(set, setItem)).toBe(true);
@@ -948,7 +947,7 @@ describe("matchersUtil", function() {
jasmine.getEnv().requireFunctioningSets();
var matchersUtil = new jasmineUnderTest.MatchersUtil();
var set = new Set();
var set = new Set(); // eslint-disable-line compat/compat
set.add({'foo': 'bar'});
expect(matchersUtil.contains(set, {'foo': 'bar'})).toBe(false);
+40 -40
View File
@@ -261,8 +261,8 @@ describe("toEqual", function() {
it("reports mismatches between arrays of different types", function() {
jasmine.getEnv().requireFunctioningTypedArrays();
var actual = new Uint32Array([1, 2, 3]),
expected = new Uint16Array([1, 2, 3]),
var actual = new Uint32Array([1, 2, 3]), // eslint-disable-line compat/compat
expected = new Uint16Array([1, 2, 3]), // eslint-disable-line compat/compat
message = "Expected Uint32Array [ 1, 2, 3 ] to equal Uint16Array [ 1, 2, 3 ].";
expect(compareEquals(actual, expected).message).toEqual(message);
@@ -448,9 +448,9 @@ describe("toEqual", function() {
it("reports mismatches between Sets", function() {
jasmine.getEnv().requireFunctioningSets();
var actual = new Set();
var actual = new Set(); // eslint-disable-line compat/compat
actual.add(1);
var expected = new Set();
var expected = new Set(); // eslint-disable-line compat/compat
expected.add(2);
var message = 'Expected Set( 1 ) to equal Set( 2 ).';
@@ -460,9 +460,9 @@ describe("toEqual", function() {
it("reports deep mismatches within Sets", function() {
jasmine.getEnv().requireFunctioningSets();
var actual = new Set();
var actual = new Set(); // eslint-disable-line compat/compat
actual.add({x: 1});
var expected = new Set();
var expected = new Set(); // eslint-disable-line compat/compat
expected.add({x: 2});
var message = 'Expected Set( Object({ x: 1 }) ) to equal Set( Object({ x: 2 }) ).';
@@ -472,9 +472,9 @@ describe("toEqual", function() {
it("reports mismatches between Sets nested in objects", function() {
jasmine.getEnv().requireFunctioningSets();
var actualSet = new Set();
var actualSet = new Set(); // eslint-disable-line compat/compat
actualSet.add(1);
var expectedSet = new Set();
var expectedSet = new Set(); // eslint-disable-line compat/compat
expectedSet.add(2);
var actual = { sets: [actualSet] };
@@ -487,10 +487,10 @@ describe("toEqual", function() {
it("reports mismatches between Sets of different lengths", function() {
jasmine.getEnv().requireFunctioningSets();
var actual = new Set();
var actual = new Set(); // eslint-disable-line compat/compat
actual.add(1);
actual.add(2);
var expected = new Set();
var expected = new Set(); // eslint-disable-line compat/compat
expected.add(2);
var message = 'Expected Set( 1, 2 ) to equal Set( 2 ).';
@@ -501,10 +501,10 @@ describe("toEqual", function() {
jasmine.getEnv().requireFunctioningSets();
// Use 'duplicate' object in actual so sizes match
var actual = new Set();
var actual = new Set(); // eslint-disable-line compat/compat
actual.add({x: 1});
actual.add({x: 1});
var expected = new Set();
var expected = new Set(); // eslint-disable-line compat/compat
expected.add({x: 1});
expected.add({x: 2});
var message = 'Expected Set( Object({ x: 1 }), Object({ x: 1 }) ) to equal Set( Object({ x: 1 }), Object({ x: 2 }) ).';
@@ -516,10 +516,10 @@ describe("toEqual", function() {
jasmine.getEnv().requireFunctioningSets();
// Use 'duplicate' object in expected so sizes match
var actual = new Set();
var actual = new Set(); // eslint-disable-line compat/compat
actual.add({x: 1});
actual.add({x: 2});
var expected = new Set();
var expected = new Set(); // eslint-disable-line compat/compat
expected.add({x: 1});
expected.add({x: 1});
var message = 'Expected Set( Object({ x: 1 }), Object({ x: 2 }) ) to equal Set( Object({ x: 1 }), Object({ x: 1 }) ).';
@@ -533,9 +533,9 @@ describe("toEqual", function() {
jasmine.getEnv().requireFunctioningMaps();
// values are the same but with different object identity
var actual = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set('a',{x:1});
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set('a',{x:1});
expect(compareEquals(actual, expected).pass).toBe(true);
@@ -544,9 +544,9 @@ describe("toEqual", function() {
it("reports deep mismatches within Maps", function() {
jasmine.getEnv().requireFunctioningMaps();
var actual = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set('a',{x:1});
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set('a',{x:2});
var message = "Expected Map( [ 'a', Object({ x: 1 }) ] ) to equal Map( [ 'a', Object({ x: 2 }) ] ).";
@@ -556,9 +556,9 @@ describe("toEqual", function() {
it("reports mismatches between Maps nested in objects", function() {
jasmine.getEnv().requireFunctioningMaps();
var actual = {Maps:[new Map()]};
var actual = {Maps:[new Map()]}; // eslint-disable-line compat/compat
actual.Maps[0].set('a',1);
var expected = {Maps:[new Map()]};
var expected = {Maps:[new Map()]}; // eslint-disable-line compat/compat
expected.Maps[0].set('a',2);
var message = "Expected $.Maps[0] = Map( [ 'a', 1 ] ) to equal Map( [ 'a', 2 ] ).";
@@ -569,9 +569,9 @@ describe("toEqual", function() {
it("reports mismatches between Maps of different lengths", function() {
jasmine.getEnv().requireFunctioningMaps();
var actual = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set('a',1);
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set('a',2);
expected.set('b',1);
var message = "Expected Map( [ 'a', 1 ] ) to equal Map( [ 'a', 2 ], [ 'b', 1 ] ).";
@@ -582,9 +582,9 @@ describe("toEqual", function() {
it("reports mismatches between Maps with equal values but differing keys", function() {
jasmine.getEnv().requireFunctioningMaps();
var actual = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set('a',1);
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set('b',1);
var message = "Expected Map( [ 'a', 1 ] ) to equal Map( [ 'b', 1 ] ).";
@@ -594,9 +594,9 @@ describe("toEqual", function() {
it("does not report mismatches between Maps with keys with same object identity", function() {
jasmine.getEnv().requireFunctioningMaps();
var key = {x: 1};
var actual = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set(key,2);
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set(key,2);
expect(compareEquals(actual, expected).pass).toBe(true);
@@ -605,9 +605,9 @@ describe("toEqual", function() {
it("reports mismatches between Maps with identical keys with different object identity", function() {
jasmine.getEnv().requireFunctioningMaps();
var actual = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set({x:1},2);
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set({x:1},2);
var message = "Expected Map( [ Object({ x: 1 }), 2 ] ) to equal Map( [ Object({ x: 1 }), 2 ] ).";
@@ -617,9 +617,9 @@ describe("toEqual", function() {
it("does not report mismatches when comparing Map key to jasmine.anything()", function() {
jasmine.getEnv().requireFunctioningMaps();
var actual = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set('a',1);
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set(jasmineUnderTest.anything(),1);
expect(compareEquals(actual, expected).pass).toBe(true);
@@ -629,10 +629,10 @@ describe("toEqual", function() {
jasmine.getEnv().requireFunctioningMaps();
jasmine.getEnv().requireFunctioningSymbols();
var key = Symbol();
var actual = new Map();
var key = Symbol(); // eslint-disable-line compat/compat
var actual = new Map(); // eslint-disable-line compat/compat
actual.set(key,1);
var expected = new Map();
var expected = new Map(); // eslint-disable-line compat/compat
expected.set(key,1);
expect(compareEquals(actual, expected).pass).toBe(true);
@@ -642,10 +642,10 @@ describe("toEqual", function() {
jasmine.getEnv().requireFunctioningMaps();
jasmine.getEnv().requireFunctioningSymbols();
var actual = new Map();
actual.set(Symbol(),1);
var expected = new Map();
expected.set(Symbol(),1);
var actual = new Map(); // eslint-disable-line compat/compat
actual.set(Symbol(),1); // eslint-disable-line compat/compat
var expected = new Map(); // eslint-disable-line compat/compat
expected.set(Symbol(),1); // eslint-disable-line compat/compat
var message = "Expected Map( [ Symbol(), 1 ] ) to equal Map( [ Symbol(), 1 ] ).";
expect(compareEquals(actual, expected).message).toBe(message);
@@ -655,9 +655,9 @@ describe("toEqual", function() {
jasmine.getEnv().requireFunctioningMaps();
jasmine.getEnv().requireFunctioningSymbols();
var actual = new Map();
actual.set(Symbol(),1);
var expected = new Map();
var actual = new Map(); // eslint-disable-line compat/compat
actual.set(Symbol(),1); // eslint-disable-line compat/compat
var expected = new Map(); // eslint-disable-line compat/compat
expected.set(jasmineUnderTest.anything(),1);
expect(compareEquals(actual, expected).pass).toBe(true);
+1
View File
@@ -1,3 +1,4 @@
/* eslint-disable compat/compat */
describe('toHaveSize', function() {
'use strict';