diff --git a/src/__tests__/form.js b/src/__tests__/form.js index 5011b35..94b460a 100644 --- a/src/__tests__/form.js +++ b/src/__tests__/form.js @@ -62,6 +62,6 @@ test('Review form submits', async () => { // Assert the right event has been emitted. expect(emitted()).toHaveProperty('submit') - expect(emitted().submit[0][0]).toMatchObject(fakeReview) + expect(emitted('submit')[0][0]).toMatchObject(fakeReview) expect(console.warn).not.toHaveBeenCalled() }) diff --git a/src/__tests__/user-event.js b/src/__tests__/user-event.js index 4db8c3e..ed02bfb 100644 --- a/src/__tests__/user-event.js +++ b/src/__tests__/user-event.js @@ -53,7 +53,7 @@ test('User events in a form', async () => { expect(submitButton).toHaveFocus() expect(submitButton).toBeEnabled() userEvent.type(submitButton, '{enter}') - expect(emitted().submit[0][0]).toMatchObject(fakeReview) + expect(emitted('submit')[0][0]).toMatchObject(fakeReview) expect(console.warn).not.toHaveBeenCalled() }) diff --git a/src/render.js b/src/render.js index b07b97c..6f635cb 100644 --- a/src/render.js +++ b/src/render.js @@ -45,7 +45,7 @@ Check out the test examples on GitHub for further details.`) : console.log(prettyDOM(el, maxLength, options)), unmount: () => wrapper.unmount(), html: () => wrapper.html(), - emitted: () => wrapper.emitted(), + emitted: name => wrapper.emitted(name), rerender: props => wrapper.setProps(props), ...getQueriesForElement(baseElement), } diff --git a/types/index.d.ts b/types/index.d.ts index b6037f3..c6c157d 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -24,6 +24,7 @@ export interface RenderResult extends BoundFunctions { unmount(): void html(): string emitted(): Record + emitted(name?: string): T[] rerender(props: object): Promise } diff --git a/types/index.test-d.ts b/types/index.test-d.ts index 8ec7e11..09ad1fd 100644 --- a/types/index.test-d.ts +++ b/types/index.test-d.ts @@ -86,6 +86,7 @@ export function testOptions() { export function testEmitted() { const {emitted} = render(SomeComponent) expectType(emitted().foo) + expectType(emitted('foo')) } /*