react-apollo icon indicating copy to clipboard operation
react-apollo copied to clipboard

MockedProvider not working correctly

Open romainleduc opened this issue 5 years ago • 1 comments

Hello, the MockedProvider class not working correctly for me.

Example with MockedProvider:

describe('SignupForm', () => {
    test('renders without error', () => {
        renderer.create(
            <MockedProvider mocks={[]}>
              <SignupForm onValidation={() => console.log('redirect')} />
            </MockedProvider>,
          );
    });
});

I get the following error:

  ● SignupForm › renders without error

    Invariant Violation: Could not find "client" in the context or passed in as an option. Wrap the root component in an <ApolloProvider>, or pass an ApolloClient instance in via o
ptions.

Example with bad pratice:

describe('SignupForm', () => {
    test('renders without error', () => {
        renderer.create(
            <ApolloProvider client={client}>
                <SignupForm onValidation={() => console.log('redirect')} />
            </ApolloProvider>
        );
    });
});

it works

My reactDOM render:

ReactDOM.render(
    <ApolloProvider client={client}>
        <CookiesProvider>
            <UserAuthProvider>
                <Router>
                    <Routes />
                </Router>
            </UserAuthProvider>
        </CookiesProvider>
    </ApolloProvider>,
    document.getElementById('root')
);

Thanks for you help :)

romainleduc avatar Jul 07 '20 14:07 romainleduc

@KiziKr were you able to solve it?

manoelneto avatar Jul 08 '20 17:07 manoelneto