diff options
Diffstat (limited to 'frontend/__tests__')
| -rw-r--r-- | frontend/__tests__/CartItem.test.js | 33 | ||||
| -rw-r--r-- | frontend/__tests__/__snapshots__/CartItem.test.js.snap | 33 | ||||
| -rw-r--r-- | frontend/__tests__/__snapshots__/CartList.test.js.snap | 33 |
3 files changed, 99 insertions, 0 deletions
diff --git a/frontend/__tests__/CartItem.test.js b/frontend/__tests__/CartItem.test.js new file mode 100644 index 0000000..42dd39b --- /dev/null +++ b/frontend/__tests__/CartItem.test.js @@ -0,0 +1,33 @@ +import React from 'react'; +import { shallow, mount } from 'enzyme'; +import toJSON from 'enzyme-to-json'; +import CartItem from '../components/CartItem'; + +const cartItem = { + item: { + price: 5000, + image: 'dog.jpg', + title: 'Fake Item', + }, + id: 'abc123', + quantity: 20, +}; + +describe('<CartItem>', () => { + it('renders and matches snapshot', () => { + const wrapper = shallow(<CartItem cartItem={cartItem} />); + expect(toJSON(wrapper)).toMatchSnapshot(); + }); + + it('renders a single quantity', () => { + const wrapper = shallow(<CartItem cartItem={{ ...cartItem, quantity: 1 }} />); + const p = wrapper.find('p'); + expect(p.text()).toBe('$50 — 1 × $50 each'); + }); + + it('renders multiples', () => { + const wrapper = shallow(<CartItem cartItem={{ ...cartItem, quantity: 23423 }} />); + const p = wrapper.find('p'); + expect(p.text()).toBe('$1,171,150 — 23423 × $50 each'); + }); +}); diff --git a/frontend/__tests__/__snapshots__/CartItem.test.js.snap b/frontend/__tests__/__snapshots__/CartItem.test.js.snap new file mode 100644 index 0000000..1f3cca5 --- /dev/null +++ b/frontend/__tests__/__snapshots__/CartItem.test.js.snap @@ -0,0 +1,33 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`<CartItem> renders and matches snapshot 1`] = ` +<styled.li + key="abc123" +> + <img + alt="Fake Item" + src="dog.jpg" + width="100" + /> + <div + className="cart-item-details" + > + <h3> + Fake Item + </h3> + <p> + $1,000 + — + <em> + 20 + × + $50 + each + </em> + </p> + </div> + <Apollo(RemoveFromCart) + id="abc123" + /> +</styled.li> +`; diff --git a/frontend/__tests__/__snapshots__/CartList.test.js.snap b/frontend/__tests__/__snapshots__/CartList.test.js.snap new file mode 100644 index 0000000..1f3cca5 --- /dev/null +++ b/frontend/__tests__/__snapshots__/CartList.test.js.snap @@ -0,0 +1,33 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`<CartItem> renders and matches snapshot 1`] = ` +<styled.li + key="abc123" +> + <img + alt="Fake Item" + src="dog.jpg" + width="100" + /> + <div + className="cart-item-details" + > + <h3> + Fake Item + </h3> + <p> + $1,000 + — + <em> + 20 + × + $50 + each + </em> + </p> + </div> + <Apollo(RemoveFromCart) + id="abc123" + /> +</styled.li> +`; |
