diff --git a/.eslintrc.json b/.eslintrc.json index a26533ebde..feeff75a73 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -22,6 +22,7 @@ "files": [ "packages/*/test/**/*.js", "codemods/*/test/**/*.js", + "packages/babel-helper-transform-fixture-test-runner/src/helpers.js", "test/**/*.js" ], "env": { diff --git a/packages/babel-helper-transform-fixture-test-runner/src/helpers.js b/packages/babel-helper-transform-fixture-test-runner/src/helpers.js index 4d67f85dfd..4df3ae81e8 100644 --- a/packages/babel-helper-transform-fixture-test-runner/src/helpers.js +++ b/packages/babel-helper-transform-fixture-test-runner/src/helpers.js @@ -1,13 +1,7 @@ -import assert from "assert"; - export function assertNoOwnProperties(obj) { - assert.equal(Object.getOwnPropertyNames(obj).length, 0); + expect(Object.getOwnPropertyNames(obj)).toHaveLength(0); } -export function assertHasOwnProperty() {} - -export function assertLacksOwnProperty() {} - export function multiline(arr) { return arr.join("\n"); } diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/mutate-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/mutate-descriptor/exec.js index 9fcb95bb69..8c4150c1bf 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/mutate-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/mutate-descriptor/exec.js @@ -58,7 +58,7 @@ class Example { } } -expect(Example.prototype.hasOwnProperty('decoratedProps')); +expect(Example.prototype).toHaveProperty('decoratedProps'); expect(Example.prototype.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/return-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/return-descriptor/exec.js index 019be2e756..b9a2edd890 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/return-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-methods/return-descriptor/exec.js @@ -59,7 +59,7 @@ class Example { } -expect(Example.prototype.hasOwnProperty('decoratedProps')); +expect(Example.prototype).toHaveProperty('decoratedProps'); expect(Example.prototype.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/mutate-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/mutate-descriptor/exec.js index 6ca6a452cb..a037b2abc6 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/mutate-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/mutate-descriptor/exec.js @@ -44,7 +44,7 @@ class Example { const inst = new Example(); -expect(Example.prototype.hasOwnProperty("decoratedProps")).toBeTruthy(); +expect(Example.prototype).toHaveProperty("decoratedProps"); expect(inst.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/properties-without-initializer/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/properties-without-initializer/exec.js index 0771ab96fc..85a042a1ed 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/properties-without-initializer/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/properties-without-initializer/exec.js @@ -7,5 +7,5 @@ class Example { } let inst = new Example(); -expect(inst.hasOwnProperty("prop")).toBe(true); +expect(inst).toHaveProperty("prop"); expect(inst.prop).toBeUndefined(); diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/return-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/return-descriptor/exec.js index 934e174a8a..8fd2fb32ac 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/return-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-prototype-properties/return-descriptor/exec.js @@ -44,7 +44,7 @@ class Example { const inst = new Example(); -expect(Example.prototype.hasOwnProperty("decoratedProps")).toBeTruthy(); +expect(Example.prototype).toHaveProperty("decoratedProps"); expect(inst.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/mutate-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/mutate-descriptor/exec.js index 121af4ea77..b1858110d1 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/mutate-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/mutate-descriptor/exec.js @@ -58,7 +58,7 @@ class Example { } } -expect(Example.hasOwnProperty("decoratedProps")).toBeTruthy(); +expect(Example).toHaveProperty("decoratedProps"); expect(Example.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/return-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/return-descriptor/exec.js index db5095a92c..2695f35f3c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/return-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-methods/return-descriptor/exec.js @@ -59,7 +59,7 @@ class Example { } -expect(Example.hasOwnProperty("decoratedProps")); +expect(Example).toHaveProperty("decoratedProps"); expect(Example.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/mutate-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/mutate-descriptor/exec.js index 1f570d3d3d..25798d7cd3 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/mutate-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/mutate-descriptor/exec.js @@ -44,7 +44,7 @@ class Example { const inst = new Example(); -expect(Example.hasOwnProperty("decoratedProps")).toBeTruthy(); +expect(Example).toHaveProperty("decoratedProps"); expect(Example.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/properties-without-initializer/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/properties-without-initializer/exec.js index 9e986133ea..7f3b79d3b9 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/properties-without-initializer/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/properties-without-initializer/exec.js @@ -6,5 +6,5 @@ class Example { @dec static prop; } -expect(Example.hasOwnProperty("prop")).toBeTruthy(); +expect(Example).toHaveProperty("prop"); expect(Example.prop).toBe(undefined); diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/return-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/return-descriptor/exec.js index 174da7df3f..35163e6592 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/return-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/class-static-properties/return-descriptor/exec.js @@ -44,7 +44,7 @@ class Example { const inst = new Example(); -expect(Example.hasOwnProperty("decoratedProps")).toBeTruthy(); +expect(Example).toHaveProperty("decoratedProps"); expect(Example.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/mutate-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/mutate-descriptor/exec.js index b732ffd7dc..0a55cbb860 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/mutate-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/mutate-descriptor/exec.js @@ -58,7 +58,7 @@ const inst = { }, } -expect(inst.hasOwnProperty('decoratedProps')).toBeTruthy(); +expect(inst).toHaveProperty('decoratedProps'); expect(inst.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/return-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/return-descriptor/exec.js index ae55f11d1a..22568a115c 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/return-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/object-methods/return-descriptor/exec.js @@ -58,7 +58,7 @@ const inst = { }, } -expect(inst.hasOwnProperty('decoratedProps')).toBeTruthy(); +expect(inst).toHaveProperty('decoratedProps'); expect(inst.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/mutate-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/mutate-descriptor/exec.js index 1c6d230365..5e753d4cf2 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/mutate-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/mutate-descriptor/exec.js @@ -43,7 +43,7 @@ const inst = { }; -expect(inst.hasOwnProperty("decoratedProps")).toBeTruthy(); +expect(inst).toHaveProperty("decoratedProps"); expect(inst.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/return-descriptor/exec.js b/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/return-descriptor/exec.js index be4bc18e0e..a5c9d45396 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/return-descriptor/exec.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/object-properties/return-descriptor/exec.js @@ -42,7 +42,7 @@ const inst = { _: 8, }; -expect(inst.hasOwnProperty("decoratedProps")).toBeTruthy(); +expect(inst).toHaveProperty("decoratedProps"); expect(inst.decoratedProps).toEqual([ "enumconfwrite", "enumconf", diff --git a/packages/babel-plugin-transform-classes/test/fixtures/exec/class-prototype-chain.js b/packages/babel-plugin-transform-classes/test/fixtures/exec/class-prototype-chain.js index aec347cffc..59a637c873 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/exec/class-prototype-chain.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/exec/class-prototype-chain.js @@ -12,8 +12,8 @@ expect(C.b()).toBe('B.b'); class D extends Object {} -expect(D instanceof Object).toBeTruthy(); -expect(D.prototype instanceof Object).toBeTruthy(); +expect(D).toBeInstanceOf(Object); +expect(D.prototype).toBeInstanceOf(Object); expect(D.keys).toBe(Object.keys); class E {} diff --git a/packages/babel-plugin-transform-classes/test/fixtures/exec/return-symbol.js b/packages/babel-plugin-transform-classes/test/fixtures/exec/return-symbol.js index 5ba74db45e..db52c344ed 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/exec/return-symbol.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/exec/return-symbol.js @@ -5,5 +5,5 @@ class Foo { } const f = new Foo; -expect(f instanceof Foo).toBeTruthy(); +expect(f).toBeInstanceOf(Foo); expect(typeof f).toBe("object"); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/imported_babel-plugin-transform-builtin-classes/exec.js b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/imported_babel-plugin-transform-builtin-classes/exec.js index c1b71bb498..10522d8483 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/imported_babel-plugin-transform-builtin-classes/exec.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/imported_babel-plugin-transform-builtin-classes/exec.js @@ -11,8 +11,8 @@ class List extends Array { } } -expect(new List(1) instanceof List).toBe(true); -expect(new List(2) instanceof Array).toBe(true); +expect(new List(1)).toBeInstanceOf(List); +expect(new List(2)).toBeInstanceOf(Array); var l = new List(3); expect(l).toHaveLength(1); @@ -27,9 +27,9 @@ class SecondLevel extends List { } } -expect(new SecondLevel(1) instanceof SecondLevel).toBe(true); -expect(new SecondLevel(2) instanceof List).toBe(true); -expect(new SecondLevel(3) instanceof Array).toBe(true); +expect(new SecondLevel(1)).toBeInstanceOf(SecondLevel); +expect(new SecondLevel(2)).toBeInstanceOf(List); +expect(new SecondLevel(3)).toBeInstanceOf(Array); var s = new SecondLevel(4); expect(s).toHaveLength(1); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/loose/exec.js b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/loose/exec.js index 87357a329d..5fed2e0795 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/loose/exec.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/loose/exec.js @@ -1,4 +1,4 @@ class List extends Array {} -expect(new List instanceof List).toBe(true); -expect(new List instanceof Array).toBe(true); +expect(new List).toBeInstanceOf(List); +expect(new List).toBeInstanceOf(Array); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/exec.js b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/exec.js index 87357a329d..5fed2e0795 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/exec.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/exec.js @@ -1,4 +1,4 @@ class List extends Array {} -expect(new List instanceof List).toBe(true); -expect(new List instanceof Array).toBe(true); +expect(new List).toBeInstanceOf(List); +expect(new List).toBeInstanceOf(Array); diff --git a/packages/babel-plugin-transform-instanceof/test/fixtures/instanceof/instanceof/exec.js b/packages/babel-plugin-transform-instanceof/test/fixtures/instanceof/instanceof/exec.js index 9daeb7dc3e..187f18b8f7 100644 --- a/packages/babel-plugin-transform-instanceof/test/fixtures/instanceof/instanceof/exec.js +++ b/packages/babel-plugin-transform-instanceof/test/fixtures/instanceof/instanceof/exec.js @@ -4,7 +4,7 @@ foo[Symbol.hasInstance]= function () { return true; }; var bar = {}; expect(bar instanceof foo).toBe(true); -expect(new String instanceof String).toBe(true); +expect(new String).toBeInstanceOf(String); // @@ -21,5 +21,5 @@ Object.defineProperty(Greeting, Symbol.hasInstance, { var a = new Greeting("hello"); var b = new Greeting("world"); -expect(a instanceof Greeting).toBe(true); -expect(b instanceof Greeting).toBe(false); +expect(a).toBeInstanceOf(Greeting); +expect(b instanceof Greeting).not.toBe(true); diff --git a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-rest/output.backup.js b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-rest/output.backup.js deleted file mode 100644 index f5a7dce14f..0000000000 --- a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-rest/output.backup.js +++ /dev/null @@ -1,22 +0,0 @@ -var a = 1; - -function rest() { - var b = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : a; - expect(b).toBe(1); -} - -rest(undefined, 2); - -function rest2() { - var b = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : a; - expect(arguments.length <= 1 ? undefined : arguments[1]).toBe(2); -} - -rest2(undefined, 2); - -function rest3() { - var b = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : a; - expect(arguments.length <= 1 ? 0 : arguments.length - 1).toBe(1); -} - -rest3(undefined, 2); diff --git a/packages/babel-plugin-transform-regenerator/test/fixtures/function-sent/example/exec.js b/packages/babel-plugin-transform-regenerator/test/fixtures/function-sent/example/exec.js index 077d072bdb..f330edc4de 100644 --- a/packages/babel-plugin-transform-regenerator/test/fixtures/function-sent/example/exec.js +++ b/packages/babel-plugin-transform-regenerator/test/fixtures/function-sent/example/exec.js @@ -16,4 +16,4 @@ tally.next(0.1); tally.next(0.1); tally.next(0.1); let last = tally.next("done"); -expect(last.value).toBe(0.30000000000000004); +expect(last.value).toBeCloseTo(0.3, 10); diff --git a/packages/babel-preset-es2015/test/fixtures/esnext/es6-classes/empty-named-class.js b/packages/babel-preset-es2015/test/fixtures/esnext/es6-classes/empty-named-class.js index 2114ad3b24..f7fe154aeb 100644 --- a/packages/babel-preset-es2015/test/fixtures/esnext/es6-classes/empty-named-class.js +++ b/packages/babel-preset-es2015/test/fixtures/esnext/es6-classes/empty-named-class.js @@ -2,4 +2,4 @@ class Foo { } expect(new Foo().constructor).toBe(Foo); -expect(new Foo() instanceof Foo).toBeTruthy(); +expect(new Foo()).toBeInstanceOf(Foo); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/From.js b/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/From.js index 5397631324..e49c5af309 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/From.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/From.js @@ -108,7 +108,7 @@ class MyArray extends Array { } var ma = MyArray.from(['a', 'b']); -expect(ma instanceof MyArray).toBe(true); +expect(ma).toBeInstanceOf(MyArray); expect(constructorCounter).toBe(1); expect(lengthSetCounter).toBe(1); expect(lengthGetCounter).toBe(0); @@ -146,7 +146,7 @@ var ma3 = new MyArray3(2); ma3[0] = 'a'; ma3[1] = 'b'; ma = MyArray2.from(ma3); -expect(ma instanceof MyArray2).toBe(true); +expect(ma).toBeInstanceOf(MyArray2); expect(constructorCounter).toBe(2); expect(lengthSetCounter).toBe(1); expect(lengthGetCounter).toBe(0); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/Of.js b/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/Of.js index 6db576e552..41131219f2 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/Of.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/ArrayExtras/Of.js @@ -6,12 +6,12 @@ expect(Array.of.length).toBe(0); //should return an array from arguments arr = Array.of(1, 'a', 3); expect(arr).toEqual([1, 'a', 3]); -// expect(arr instanceof Array).toBe(true); +// expect(arr).toBeInstanceof(Array); //should work with no arguments arr = Array.of(); expect(arr).toEqual([]); -// expect(arr instanceof Array).toBe(true); +// expect(arr).toBeInstanceof(Array); //should work with sub-classed array class MyArray extends Array {} @@ -20,7 +20,7 @@ arr = MyArray.of(4, 'b'); expect(arr[0]).toBe(4); expect(arr[1]).toBe('b'); expect(arr).toHaveLength(2); -// expect(arr instanceof MyArray).toBe(true); +// expect(arr).toBeInstanceof(MyArray); //should call with exotic array class ExoticArray { @@ -34,4 +34,4 @@ expect(arr[1]).toBe('c'); expect(arr[2]).toBe(6); expect(arr[3]).toBe('d'); expect(arr).toHaveLength(4); -expect(arr instanceof ExoticArray).toBe(true); +expect(arr).toBeInstanceOf(ExoticArray); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/AsyncFunctions/Prototype.js b/packages/babel-preset-es2015/test/fixtures/traceur/AsyncFunctions/Prototype.js index 93d2ff3cbe..1b718e25fc 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/AsyncFunctions/Prototype.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/AsyncFunctions/Prototype.js @@ -4,4 +4,4 @@ async function f() { } expect(Object.getPrototypeOf(f)).toBe(Function.prototype); -expect(f() instanceof Promise).toBe(true); +expect(f()).toBeInstanceOf(Promise); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/.ClassMethodInheritance.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/.ClassMethodInheritance.js index 5e9088eb31..ded2969975 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/.ClassMethodInheritance.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/.ClassMethodInheritance.js @@ -20,4 +20,4 @@ class E {} expect(Object.getPrototypeOf(E)).toBe(Function.prototype); expect(Object.getPrototypeOf(E.prototype)).toBe(Object.prototype); -expect('keys' in E).toBe(false); +expect(E).not.toHaveProperty('keys'); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ConstructorMember.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ConstructorMember.js index 388bcfca8e..d3403c3e33 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ConstructorMember.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ConstructorMember.js @@ -12,7 +12,7 @@ class DerivedConstructorMember extends ConstructorMember { var cm = new ConstructorMember; expect(cm.constructor).toBe(ConstructorMember.prototype.constructor); -expect(ConstructorMember.prototype.hasOwnProperty('constructor')).toBe(true); +expect(ConstructorMember.prototype).toHaveProperty('constructor'); for (var key in ConstructorMember) { expect('constructor should not be enumerable').not.toBe('constructor'); @@ -20,7 +20,7 @@ for (var key in ConstructorMember) { var dcm = new DerivedConstructorMember; expect(dcm.constructor).toBe(DerivedConstructorMember.prototype.constructor); -expect(DerivedConstructorMember.prototype.hasOwnProperty('constructor')).toBe(true); +expect(DerivedConstructorMember.prototype).toHaveProperty('constructor'); for (var key in DerivedConstructorMember) { expect('constructor should not be enumerable').not.toBe('constructor'); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/EmptyClass.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/EmptyClass.js index c9b934dd51..384f275bd7 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/EmptyClass.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/EmptyClass.js @@ -20,10 +20,10 @@ for (var element in Empty) { var e2 = new Empty(); expect(e).not.toBe(e2); -expect(e instanceof Empty).toBe(true); -expect(e instanceof EmptyB).toBe(false); +expect(e).toBeInstanceOf(Empty); +expect(e).not.toBeInstanceOf(EmptyB); var b = new EmptyB(); -expect(b instanceof Empty).toBe(true); -expect(b instanceof EmptyB).toBe(true); +expect(b).toBeInstanceOf(Empty); +expect(b).toBeInstanceOf(EmptyB); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendCoverFormals.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendCoverFormals.js index e70881bca0..48ad6f7b67 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendCoverFormals.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendCoverFormals.js @@ -6,5 +6,5 @@ class D extends (x, y) { } -expect(new D() instanceof C).toBe(true); -expect(new D() instanceof D).toBe(true); +expect(new D()).toBeInstanceOf(C); +expect(new D()).toBeInstanceOf(D); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendStrange.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendStrange.js index 7e577d08cc..7d616ba24e 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendStrange.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/ExtendStrange.js @@ -1,8 +1,8 @@ class C extends null {} var c = new C; -expect(c instanceof C).toBe(true); -expect(c instanceof Object).toBe(false); +expect(c).toBeInstanceOf(C); +expect(c).toBeInstanceOf(Object); // Closure testing framework tries to toString the object and fails. expect(Object.getPrototypeOf(c)).toBe(C.prototype); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/Inheritance.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/Inheritance.js index 17e9e84d68..ddd795387f 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/Inheritance.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/Inheritance.js @@ -4,6 +4,6 @@ class SimpleDerived extends SimpleBase {} // ---------------------------------------------------------------------------- var derived = new SimpleDerived(); -expect(derived instanceof SimpleDerived).toBe(true); -expect(derived instanceof SimpleBase).toBe(true); -expect(derived instanceof Object).toBe(true); +expect(derived).toBeInstanceOf(SimpleDerived); +expect(derived).toBeInstanceOf(SimpleBase); +expect(derived).toBeInstanceOf(Object); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromMemberExpression.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromMemberExpression.js index 4b8722655d..9cbed381e1 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromMemberExpression.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromMemberExpression.js @@ -25,7 +25,9 @@ var a = new MemberExprBase('w value'); var pa = Object.getPrototypeOf(a); var ppa = Object.getPrototypeOf(pa); -assertHasOwnProperty(a, 'yyy', 'w', 'z'); -assertLacksOwnProperty(a, 'x'); -assertHasOwnProperty(pa, 'constructor'); -assertHasOwnProperty(ppa, 'x', 'constructor'); +expect(a).toHaveProperty('yyy'); +expect(a).toHaveProperty('w'); +expect(a).toHaveProperty('z'); +expect(a).not.toHaveProperty('x'); +expect(pa).toHaveProperty('constructor'); +expect(ppa).toHaveProperty('constructor'); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromNonclass.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromNonclass.js index b1501c5b25..ba42ee26a3 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromNonclass.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/InheritanceFromNonclass.js @@ -12,6 +12,6 @@ class NoClassB extends noClassA { // ---------------------------------------------------------------------------- var b = new NoClassB; -expect(b instanceof noClassA).toBe(true); +expect(b).toBeInstanceOf(noClassA); expect('ma').toBe(b.ma()); expect('mb ma').toBe(b.mb()); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/MethodInheritance.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/MethodInheritance.js index c9e0f63baa..e11cba513c 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/MethodInheritance.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/MethodInheritance.js @@ -24,9 +24,12 @@ assertNoOwnProperties(a); assertNoOwnProperties(b); assertNoOwnProperties(c); -assertHasOwnProperty(pa, 'ma'); -assertLacksOwnProperty(pa, 'mb', 'mc'); -assertHasOwnProperty(pb, 'mb'); -assertLacksOwnProperty(pb, 'ma', 'mc'); -assertHasOwnProperty(pc, 'mc'); -assertLacksOwnProperty(pc, 'ma', 'mb'); +expect(pa).toHaveProperty('ma'); +expect(pa).not.toHaveProperty('mb'); +expect(pa).not.toHaveProperty('mc'); +expect(pb).toHaveProperty('mb'); +expect(pb).not.toHaveProperty('ma'); +expect(pb).not.toHaveProperty('mc'); +expect(pc).toHaveProperty('mc'); +expect(pc).not.toHaveProperty('ma'); +expect(pc).not.toHaveProperty('mb'); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/SuperMissing.js b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/SuperMissing.js index 0a57cd70a9..ac5e3f52b5 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Classes/SuperMissing.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Classes/SuperMissing.js @@ -35,6 +35,6 @@ try { } expect(actualF).toBe(expectedF); -expect(expectedM instanceof TypeError).toBe(true); -expect(actualM instanceof TypeError).toBe(true); +expect(expectedM).toBeInstanceOf(TypeError); +expect(actualM).toBeInstanceOf(TypeError); expect(Object.getPrototypeOf(actualM)).toBe(Object.getPrototypeOf(expectedM)); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Misc/ObjectAssign.js b/packages/babel-preset-es2015/test/fixtures/traceur/Misc/ObjectAssign.js index 63009e492b..45e823cab2 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Misc/ObjectAssign.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Misc/ObjectAssign.js @@ -4,7 +4,7 @@ var assigned = Object.assign(target, source); // ---------------------------------------------------------------------------- -expect(Object.hasOwnProperty("assign")).toBe(true); +expect(Object).toHaveProperty("assign"); expect(assigned.a).toBe(source.a); expect(assigned.b).toBe(target.b); expect(assigned.c).toBe(source.c); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Misc/PromiseThrowInResolve.js b/packages/babel-preset-es2015/test/fixtures/traceur/Misc/PromiseThrowInResolve.js index 675e1ea577..a04eec7cb7 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Misc/PromiseThrowInResolve.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Misc/PromiseThrowInResolve.js @@ -9,7 +9,7 @@ throwInResolve.then((v) => { }).catch(function(ex) { // When catch() is used in testing, these asserts would // not be called, just the done() to avoid timeout. - expect(ex instanceof Error).toBe(true); + expect(ex).toBeInstanceOf(Error); expect(ex.toString()).toEqual(expect.stringContaining(message)); done(); }).catch(done); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-class.js b/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-class.js index 9cb1e8dde2..a8c4082742 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-class.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-class.js @@ -4,4 +4,4 @@ export default class C { } } -expect(C instanceof Function).toBe(true); +expect(C).toBeInstanceOf(Function); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-function.js b/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-function.js index 5de1533491..67f0ed392a 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-function.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Modules/resources/default-function.js @@ -2,4 +2,4 @@ export default function f() { return 123; } -expect(f instanceof Function).toBe(true); +expect(f).toBeInstanceOf(Function); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/NumericLiteral/Simple.js b/packages/babel-preset-es2015/test/fixtures/traceur/NumericLiteral/Simple.js index cfb2a4a691..8e7c4deb94 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/NumericLiteral/Simple.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/NumericLiteral/Simple.js @@ -84,18 +84,17 @@ static set 0O13(v) {} } - expect(C.prototype.hasOwnProperty('0')).toBe(true); - expect(C.prototype.hasOwnProperty('1')).toBe(true); - expect(C.prototype.hasOwnProperty('2')).toBe(true); - expect(C.prototype.hasOwnProperty('6')).toBe(true); - expect(C.prototype.hasOwnProperty('7')).toBe(true); - expect(C.prototype.hasOwnProperty('8')).toBe(true); - - expect(C.hasOwnProperty('3')).toBe(true); - expect(C.hasOwnProperty('4')).toBe(true); - expect(C.hasOwnProperty('5')).toBe(true); - expect(C.hasOwnProperty('9')).toBe(true); - expect(C.hasOwnProperty('10')).toBe(true); - expect(C.hasOwnProperty('11')).toBe(true); + expect(C.prototype).toHaveProperty('0'); + expect(C.prototype).toHaveProperty('1'); + expect(C.prototype).toHaveProperty('2'); + expect(C.prototype).toHaveProperty('6'); + expect(C.prototype).toHaveProperty('7'); + expect(C.prototype).toHaveProperty('8'); + expect(C).toHaveProperty('3'); + expect(C).toHaveProperty('4'); + expect(C).toHaveProperty('5'); + expect(C).toHaveProperty('9'); + expect(C).toHaveProperty('10'); + expect(C).toHaveProperty('11'); })(); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/PropertyMethodAssignment/PropertyMethodAssignment.js b/packages/babel-preset-es2015/test/fixtures/traceur/PropertyMethodAssignment/PropertyMethodAssignment.js index 715dcbbda6..0876503b02 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/PropertyMethodAssignment/PropertyMethodAssignment.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/PropertyMethodAssignment/PropertyMethodAssignment.js @@ -35,7 +35,7 @@ expect(Object.keys(object)).toEqual([ ]); function assertMethod(object, name) { - expect(object.hasOwnProperty(name)).toBe(true); + expect(object).toHaveProperty(name); var descriptor = Object.getOwnPropertyDescriptor(object, name); expect(typeof descriptor).toBe('object'); expect(descriptor.enumerable).toBe(true); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Scope/BlockBinding2.js b/packages/babel-preset-es2015/test/fixtures/traceur/Scope/BlockBinding2.js index 37b40d2a89..153605b019 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Scope/BlockBinding2.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Scope/BlockBinding2.js @@ -10,6 +10,6 @@ for (let x in obj) { // ---------------------------------------------------------------------------- -expect(result[0]()).toBe('hello a');; -expect(result[1]()).toBe('hello b');; -expect(result[2]()).toBe('hello c');; +expect(result[0]()).toBe('hello a'); +expect(result[1]()).toBe('hello b'); +expect(result[2]()).toBe('hello c'); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Spread/Class.js b/packages/babel-preset-es2015/test/fixtures/traceur/Spread/Class.js index d420dac307..337d9a5262 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Spread/Class.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Spread/Class.js @@ -14,4 +14,4 @@ var object = new SpreadTestClass(...[0, 1]); expect(object.x).toBe(0); expect(object.y).toBe(1); expect(object.self).toBe(object); -expect(object instanceof object.SpreadTestClass).toBe(true); +expect(object).toBeInstanceOf(object.SpreadTestClass); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Spread/New2.js b/packages/babel-preset-es2015/test/fixtures/traceur/Spread/New2.js index 0870f2cc40..1833194d2a 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Spread/New2.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Spread/New2.js @@ -18,6 +18,6 @@ var object = new F(0, ...[1, 2]); expect(object.x).toBe(0); expect(object.y).toBe(1); expect(object.z).toBe(2); -expect(object instanceof object.F).toBe(false); -expect(object instanceof object.G).toBe(true); -expect(object.f instanceof object.F).toBe(true); +expect(object).not.toBeInstanceOf(object.F); +expect(object).toBeInstanceOf(object.G); +expect(object.f).toBeInstanceOf(object.F); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/Object.js b/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/Object.js index 58419af321..1c9d55e217 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/Object.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/Object.js @@ -5,7 +5,7 @@ expect(object[s]).toBe(42); // Native Symbol throws for ToString. // expect(object[s + '']).toBeUndefined(); expect(Object.getOwnPropertyNames(object)).toEqual([]); -expect(object.hasOwnProperty(s)).toBe(true); +expect(object).toHaveProperty(s); expect(object[s] -= 10).toBe(32); expect(object[s] /= 2).toBe(16); diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/ObjectModel.js b/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/ObjectModel.js index ecb9733052..37fa0f44e8 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/ObjectModel.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Symbol/ObjectModel.js @@ -1,7 +1,7 @@ var s = Symbol('s'); expect(typeof s).toBe('symbol'); expect(s.constructor).toBe(Symbol); -expect(s instanceof Symbol).toBe(false); +expect(s).toBeInstanceOf(Symbol); expect(() => { new Symbol; diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Yield/ObjectModel.js b/packages/babel-preset-es2015/test/fixtures/traceur/Yield/ObjectModel.js index 3dd74b7b5c..8546f64632 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Yield/ObjectModel.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Yield/ObjectModel.js @@ -10,7 +10,7 @@ expect(GeneratorFunctionPrototype.prototype).toBe(f.prototype.__proto__); expect(GeneratorFunctionPrototype.__proto__).toBe(Function.prototype); var g = f(); -expect(g instanceof f).toBe(true); +expect(g).toBeInstanceOf(f); expect(g.__proto__).toBe(f.prototype); @@ -31,7 +31,7 @@ function* f2() { expect(f.__proto__).toBe(f2.__proto__); -expect(f.hasOwnProperty('constructor')).toBe(false); +expect(f).not.toHaveProperty('constructor'); expect(f.__proto__.constructor.name).toBe('GeneratorFunction'); // Intentionally at the end to test hoisting. diff --git a/packages/babel-preset-es2015/test/fixtures/traceur/Yield/OverrideGenerator.js b/packages/babel-preset-es2015/test/fixtures/traceur/Yield/OverrideGenerator.js index a7e781a7c8..74cfbb134a 100644 --- a/packages/babel-preset-es2015/test/fixtures/traceur/Yield/OverrideGenerator.js +++ b/packages/babel-preset-es2015/test/fixtures/traceur/Yield/OverrideGenerator.js @@ -11,4 +11,4 @@ var g = f2(); expect(g.next()).toEqual({value: 1, done: false}); expect(g.next()).toEqual({value: undefined, done: true}); -expect(g instanceof f2).toBe(true); +expect(g).toBeInstanceOf(f2);