12345678910111213141516171819202122232425262728293031 |
- test("constructor properties", () => {
- expect(Set).toHaveLength(0);
- expect(Set.name).toBe("Set");
- });
- describe("errors", () => {
- test("invalid array iterators", () => {
- [-100, Infinity, NaN, {}, 152n].forEach(value => {
- expect(() => {
- new Set(value);
- }).toThrowWithMessage(TypeError, "is not iterable");
- });
- });
- test("called without new", () => {
- expect(() => {
- Set();
- }).toThrowWithMessage(TypeError, "Set constructor must be called with 'new'");
- });
- });
- describe("normal behavior", () => {
- test("typeof", () => {
- expect(typeof new Set()).toBe("object");
- });
- test("constructor with single array argument", () => {
- var a = new Set([0, 1, 2]);
- expect(a instanceof Set).toBeTrue();
- expect(a).toHaveSize(3);
- });
- });
|