summaryrefslogtreecommitdiffstats
path: root/stepped-solutions/FINISHED/frontend/__tests__/AddToCart.test.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-09-14 12:18:12 -0400
committerWes Bos <wesbos@gmail.com>2018-09-14 12:18:12 -0400
commit2d145b026cfdf54a63bef0b9d6324b6785390307 (patch)
treef6c1d8f987437803a5c026e70535bf9ff244e885 /stepped-solutions/FINISHED/frontend/__tests__/AddToCart.test.js
parent8a5825d52271d712ec7c8348447d433067e13ef2 (diff)
move finished folder
Diffstat (limited to 'stepped-solutions/FINISHED/frontend/__tests__/AddToCart.test.js')
-rw-r--r--stepped-solutions/FINISHED/frontend/__tests__/AddToCart.test.js97
1 files changed, 0 insertions, 97 deletions
diff --git a/stepped-solutions/FINISHED/frontend/__tests__/AddToCart.test.js b/stepped-solutions/FINISHED/frontend/__tests__/AddToCart.test.js
deleted file mode 100644
index cfc2e3e..0000000
--- a/stepped-solutions/FINISHED/frontend/__tests__/AddToCart.test.js
+++ /dev/null
@@ -1,97 +0,0 @@
-import { mount } from 'enzyme';
-import wait from 'waait';
-import toJSON from 'enzyme-to-json';
-import { MockedProvider } from 'react-apollo/test-utils';
-import { ApolloConsumer } from 'react-apollo';
-import AddToCart, { ADD_TO_CART_MUTATION } from '../components/AddToCart';
-import { CURRENT_USER_QUERY } from '../components/User';
-import { fakeUser, fakeCartItem } from '../lib/testUtils';
-
-const mocks = [
- {
- request: { query: CURRENT_USER_QUERY },
- result: {
- data: {
- me: {
- ...fakeUser(),
- cart: [],
- },
- },
- },
- },
- {
- request: { query: CURRENT_USER_QUERY },
- result: {
- data: {
- me: {
- ...fakeUser(),
- cart: [fakeCartItem()],
- },
- },
- },
- },
- {
- request: { query: ADD_TO_CART_MUTATION, variables: { id: 'abc123' } },
- result: {
- data: {
- addToCart: {
- ...fakeCartItem(),
- quantity: 1,
- },
- },
- },
- },
-];
-
-describe('<AddToCart/>', () => {
- it('renders and matches the snap shot', async () => {
- const wrapper = mount(
- <MockedProvider mocks={mocks}>
- <AddToCart id="abc123" />
- </MockedProvider>
- );
- await wait();
- wrapper.update();
- expect(toJSON(wrapper.find('button'))).toMatchSnapshot();
- });
-
- it('adds an item to cart when clicked', async () => {
- let apolloClient;
- const wrapper = mount(
- <MockedProvider mocks={mocks}>
- <ApolloConsumer>
- {client => {
- apolloClient = client;
- return <AddToCart id="abc123" />;
- }}
- </ApolloConsumer>
- </MockedProvider>
- );
- await wait();
- wrapper.update();
- const { data: { me } } = await apolloClient.query({ query: CURRENT_USER_QUERY });
- // console.log(me);
- expect(me.cart).toHaveLength(0);
- // add an item to the cart
- wrapper.find('button').simulate('click');
- await wait();
- // check if the item is in the cart
- const { data: { me: me2 } } = await apolloClient.query({ query: CURRENT_USER_QUERY });
- expect(me2.cart).toHaveLength(1);
- expect(me2.cart[0].id).toBe('omg123');
- expect(me2.cart[0].quantity).toBe(3);
- });
-
- it('changes from add to adding when clicked', async () => {
- const wrapper = mount(
- <MockedProvider mocks={mocks}>
- <AddToCart id="abc123" />
- </MockedProvider>
- );
- await wait();
- wrapper.update();
- expect(wrapper.text()).toContain('Add To Cart');
- wrapper.find('button').simulate('click');
- expect(wrapper.text()).toContain('Adding To Cart');
- });
-});