summaryrefslogtreecommitdiffstats
path: root/finished-application/frontend/__tests__/TakeMyMoney.test.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-09-13 14:18:56 -0400
committerWes Bos <wesbos@gmail.com>2018-09-13 14:18:56 -0400
commit8a5825d52271d712ec7c8348447d433067e13ef2 (patch)
treeba07c218c1b2d4e59c154f2059b69fd858ae65fe /finished-application/frontend/__tests__/TakeMyMoney.test.js
parentb0d25a9ad3cc1df2fcc11ddb84e4603b94520b09 (diff)
DONE
Diffstat (limited to 'finished-application/frontend/__tests__/TakeMyMoney.test.js')
-rw-r--r--finished-application/frontend/__tests__/TakeMyMoney.test.js98
1 files changed, 0 insertions, 98 deletions
diff --git a/finished-application/frontend/__tests__/TakeMyMoney.test.js b/finished-application/frontend/__tests__/TakeMyMoney.test.js
deleted file mode 100644
index 1c41410..0000000
--- a/finished-application/frontend/__tests__/TakeMyMoney.test.js
+++ /dev/null
@@ -1,98 +0,0 @@
-import { mount } from 'enzyme';
-import toJSON from 'enzyme-to-json';
-import NProgress from 'nprogress';
-import Router from 'next/router';
-import wait from 'waait';
-import { MockedProvider } from 'react-apollo/test-utils';
-import TakeMyMoney from '../components/TakeMyMoney';
-import { fakeUser, fakeCartItem } from '../lib/testUtils';
-import { CURRENT_USER_QUERY } from '../components/User';
-
-Router.router = { push() {} };
-
-const mocks = [
- {
- request: { query: CURRENT_USER_QUERY },
- result: {
- data: {
- me: {
- ...fakeUser(),
- cart: [fakeCartItem()],
- },
- },
- },
- },
-];
-describe('<TakeMyMoney />', () => {
- it('renders', async () => {
- const wrapper = mount(
- <MockedProvider mocks={mocks}>
- <TakeMyMoney />
- </MockedProvider>
- );
- // wait for it to load
- await wait();
- wrapper.update();
- // find the button
- const checkoutButton = wrapper.find('ReactStripeCheckout');
- expect(toJSON(checkoutButton)).toMatchSnapshot();
- });
-
- it('creates an order onToken', async () => {
- const createOrderSpy = jest.fn().mockResolvedValue({ data: { createOrder: { id: 'xyz789' } } });
-
- const wrapper = mount(
- <MockedProvider mocks={mocks}>
- <TakeMyMoney />
- </MockedProvider>
- );
- const component = wrapper.find('TakeMyMoney');
- component.instance().onToken({ id: 'abc123' }, createOrderSpy);
- // check it
- expect(createOrderSpy).toBeCalled();
- expect(createOrderSpy).toBeCalledWith({ variables: { token: 'abc123' } });
- });
-
- it('turns the progress bar on', async () => {
- const wrapper = mount(
- <MockedProvider mocks={mocks}>
- <TakeMyMoney />
- </MockedProvider>
- );
- await wait();
- wrapper.update();
- NProgress.start = jest.fn();
-
- const createOrderSpy = jest.fn().mockResolvedValue({ data: { createOrder: { id: 'xyz789' } } });
- const component = wrapper.find('TakeMyMoney');
- component.instance().onToken({ id: 'abc123' }, createOrderSpy);
- wrapper.find('button').simulate('click');
- expect(NProgress.start).toHaveBeenCalled();
- });
-
- it('routes to the order page when completed', async () => {
- // Mount the wrapper
- const wrapper = mount(
- <MockedProvider mocks={mocks}>
- <TakeMyMoney />
- </MockedProvider>
- );
- await wait();
- wrapper.update();
-
- // Spy on Router Push
- Router.router.push = jest.fn();
- const createOrderSpy = jest.fn().mockResolvedValue({ data: { createOrder: { id: 'xyz789' } } });
-
- const component = wrapper.find('TakeMyMoney');
- component.instance().onToken({ id: 'abc123' }, createOrderSpy);
-
- // submit the form
- wrapper.find('button').simulate('click');
- await wait();
- expect(Router.router.push).toHaveBeenCalledWith({
- pathname: '/order',
- query: { id: 'xyz789' },
- });
- });
-});