diff --git a/src/__tests__/render.js b/src/__tests__/render.js index 63fc8f3..dfb4475 100644 --- a/src/__tests__/render.js +++ b/src/__tests__/render.js @@ -30,3 +30,13 @@ test('renders options.wrapper around node', () => { `); }); + +test('returns the queries passed as options bound to the container', () => { + const _getQueryPassedAsOption = { bind: jest.fn(() => _getQueryPassedAsOption) } + const queries = { getQueryPassedAsOption: _getQueryPassedAsOption }; + + const { container, getQueryPassedAsOption } = render(, { queries }); + + expect(queries.getQueryPassedAsOption.bind).toHaveBeenCalledWith(null,container); + expect(getQueryPassedAsOption).toEqual(_getQueryPassedAsOption); +}); diff --git a/src/index.js b/src/index.js index 68304e4..f2a72eb 100644 --- a/src/index.js +++ b/src/index.js @@ -9,7 +9,7 @@ import { resultContainer, TestHook } from './hooks'; import { getQueriesForElement } from './get-queries-for-element'; import { fireEvent as rntlFireEvent, NativeEvent } from './events'; -function render(ui, { options = {}, wrapper: WrapperComponent } = {}) { +function render(ui, { options = {}, wrapper: WrapperComponent, queries } = {}) { const wrapUiIfNeeded = innerElement => WrapperComponent ? {innerElement} : innerElement; @@ -31,7 +31,7 @@ function render(ui, { options = {}, wrapper: WrapperComponent } = {}) { container.update(wrapUiIfNeeded(rerenderUi)); }); }, - ...getQueriesForElement(container), + ...getQueriesForElement(container, queries || undefined), }; }