1.18.0 • Published 10 months ago

expect-even-more-jest v1.18.0

Weekly downloads
3
License
ISC
Repository
github
Last release
10 months ago

expect-even-more-jest

Test

npm

What is it?

It's expect-more-jest with even more stuff!

Why?

Because expect-more-jest has most of the things I need, but is missing a few, which I'm not entirely sure would be accepted upstream. This way, I present one package with all the tastiness of expect-more-jest as well as all the useful things that I like!

Ok, so what's in the tin?

First, check out what expect-more-jest supplies Cool, huh?

Now, in addition to that, I've added:

describe(`expect-even-more-jest', () => {
    it(`makes your tests and output easier to read as well!`, async () => {
        // values
        expect(SomeClass).toBeConstructor();
        expect(new SomeClass()).toBeA(SomeClass);
        // syntactic sugar: better flowing
        expect(new ExcitedThing()).toBeAn(ExcitedThing);
        // test that a value is not null or undefined
        expect(someValue).toExist();
        // tests matching properties on two objects
        expect({ foo: 1, bar: 2 })
            .toIntersectionEqual({ foo: 1, quux: 2 });

        // mocks & spies
        expect(spyOrMock).toHaveBeenCalledOnce();
        expect(spyOrMock).toHaveBeenCalledOnceWith("hello", "world");

        // promises
        // - completed promises have resolved _or_ rejected
        await expect(Promise.resolve()).toBeCompleted();
        await expect(Promise.reject()).toBeCompleted();

        // test that a promise resolves within a timeframe (defaults to 50 ms)
        await expect(Promise.resolve()).toBeResolved("should have resolved", 5000);
        // test that a promise rejects within a timeframe (defaults to 50 ms)
        await expect(Promise.reject()).toBeRejected("should have rejected", 123);
        expect(new Promise(() => {})).toBePromiseLike();

        // file system
        expect(pathToFile).toBeFile();
        expect(pathToFolder).toBeFolder();

        // collections
        expect([1, 2, 3 ]).toBeEquivalentTo([ 2, 1, 3]);
        expect({ foo: 1 }).toHaveKey("foo");
        expect({ foo: 1, bar: 2 }).toHaveKeys("foo", "bar");
        expect([ 1, 2, 3 ]).toAllMatch(i => i < 4);
        // performs deep partial equality testing on elements of an array to find
        // the search object, using jasmine.objectContaining (so you don't need
        // to match _all_ properties!
        expect(arrayOfObjects).toContainElementLike(search);
    });
});
1.18.0

10 months ago

1.17.0

10 months ago

1.16.0

11 months ago

1.15.0

11 months ago

1.14.0

11 months ago

1.13.0

3 years ago

1.12.0

3 years ago

1.11.0

4 years ago

1.10.0

4 years ago

1.9.0

4 years ago

1.8.0

4 years ago

1.7.0

4 years ago

1.6.0

4 years ago

1.5.0

4 years ago

1.4.0

4 years ago

1.3.0

4 years ago

1.2.0

4 years ago

1.1.0

4 years ago

1.0.0

4 years ago

0.1.0

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago