-
-describe("isConcatSpreadable", () => {
- it("[[Call]] returns false for primitives", () => {
- assertStrictEquals(isConcatSpreadable("failure"), false);
- });
-
- it("[[Call]] returns false if [Symbol.isConcatSpreadable] is null or false", () => {
- assertStrictEquals(
- isConcatSpreadable(
- Object.assign([], { [Symbol.isConcatSpreadable]: null }),
- ),
- false,
- );
- assertStrictEquals(
- isConcatSpreadable(
- Object.assign([], { [Symbol.isConcatSpreadable]: false }),
- ),
- false,
- );
- });
-
- it("[[Call]] returns true if [Symbol.isConcatSpreadable] is undefined and the object is an array", () => {
- assertStrictEquals(
- isConcatSpreadable(
- Object.assign([], { [Symbol.isConcatSpreadable]: undefined }),
- ),
- true,
- );
- });
-
- it("[[Call]] returns true if [Symbol.isConcatSpreadable] is true", () => {
- assertStrictEquals(
- isConcatSpreadable({ [Symbol.isConcatSpreadable]: true }),
- true,
- );
- });
-});