PASS new FontFaceSet() threw exception TypeError: Not enough arguments. PASS new FontFaceSet([]).size is 0 PASS new FontFaceSet([fontFace1]).size is 1 PASS new FontFaceSet(1) threw exception TypeError: Value is not a sequence. PASS new FontFaceSet('hello') threw exception TypeError: Value is not a sequence. PASS new FontFaceSet(new Set([fontFace1])).size is 1 PASS x = { [Symbol.iterator]: function*() { yield fontFace1; yield fontFace2; } }; new FontFaceSet(x).size is 2 PASS x = { [Symbol.iterator]: 1 }; new FontFaceSet(x) threw exception TypeError: Type error. PASS x = { [Symbol.iterator]: null }; new FontFaceSet(x) threw exception TypeError: Type error. PASS x = { [Symbol.iterator]: function*() { yield fontFace1; throw {name: 'SomeError', toString: () => 'Some error'}; } }; new FontFaceSet(x) threw exception Some error. PASS fontFaceSet.status is "loaded" PASS item.done is false PASS item.value is fontFace1 PASS item.done is true PASS item.value is undefined PASS item.done is false PASS item.value is fontFace1 PASS item.done is true PASS item.done is false PASS item.value is fontFace1 PASS item.done is true PASS fontFaceSet is set PASS value1 is value2 PASS fontFaceSet.add(fontFace2) is fontFaceSet PASS fontFaceSet.size is 2 PASS fontFaceSet.add(null) threw exception TypeError: Argument 1 ('font') to FontFaceSet.add must be an instance of FontFace. PASS item.done is false PASS item.value is fontFace1 PASS item.done is false PASS item.value is fontFace2 PASS item.done is true PASS fontFaceSet.delete(fontFace1) is true PASS fontFaceSet.delete(fontFace3) is false PASS fontFaceSet.delete(null) threw exception TypeError: Argument 1 ('font') to FontFaceSet.delete must be an instance of FontFace. PASS fontFaceSet.has(fontFace1) is false PASS fontFaceSet.has(fontFace2) is true PASS fontFaceSet.has(null) threw exception TypeError: Argument 1 ('font') to FontFaceSet.has must be an instance of FontFace. PASS fontFaceSet.size is 0 PASS fontFaceSet.values().next().done is true PASS fontFaceSet.check('garbage') threw exception SyntaxError: The string did not match the expected pattern.. PASS fontFaceSet.check('16px garbage') is true PASS fontFaceSet.check('16px family1') is false PASS fontFaceSet.status is "loaded" PASS item.code is item.SYNTAX_ERR PASS fontFaceSet.check('16px family1') is false PASS item is [] PASS item.code is item.NETWORK_ERR PASS fontFaceSet.check('16px family3') is false PASS fontFaceSet.status is "loading" PASS item is [fontFace3] PASS fontFaceSet.check('16px family3') is true PASS fontFaceSet.status is "loaded" PASS fontFaceSet.status is "loaded" PASS item is [fontFace3] PASS item is [fontFace3] PASS item is fontFaceSet PASS fontFaceSet.status is "loaded" PASS fontFaceSet.status is "loading" PASS item is fontFaceSet PASS TypeError: The FontFaceSet.ready getter can only be used on instances of FontFaceSet PASS successfullyParsed is true TEST COMPLETE