summaryrefslogtreecommitdiffstats
path: root/frontend/__tests__
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-05-02 14:51:36 -0400
committerWes Bos <wesbos@gmail.com>2018-05-02 14:51:36 -0400
commit6a83ac97ba191e1169aca4a662825bc52624cf12 (patch)
tree19052e4591265d74b63fcca8a3b667b18ae4984c /frontend/__tests__
parentf02a5dc73ac4a14c1d641a6ddbfcd2f1bd2ea0b5 (diff)
remove mockMang
Diffstat (limited to 'frontend/__tests__')
-rw-r--r--frontend/__tests__/AddToCart.test.js2
-rw-r--r--frontend/__tests__/Cart.test.js4
-rw-r--r--frontend/__tests__/EditUser.test.js2
-rw-r--r--frontend/__tests__/Order.test.js2
-rw-r--r--frontend/__tests__/Pagination.test.js2
-rw-r--r--frontend/__tests__/RemoveFromCart.test.js2
-rw-r--r--frontend/__tests__/ResetRequest.test.js3
-rw-r--r--frontend/__tests__/Signup.test.js2
-rw-r--r--frontend/__tests__/SingleItem.test.js2
-rw-r--r--frontend/__tests__/TakeMyMoney.test.js2
-rw-r--r--frontend/__tests__/mockMang.js122
-rw-r--r--frontend/__tests__/testUtils.js55
12 files changed, 66 insertions, 134 deletions
diff --git a/frontend/__tests__/AddToCart.test.js b/frontend/__tests__/AddToCart.test.js
index 9b6a304..c2fc004 100644
--- a/frontend/__tests__/AddToCart.test.js
+++ b/frontend/__tests__/AddToCart.test.js
@@ -2,7 +2,7 @@ import React from 'react';
import { mount } from 'enzyme';
import toJSON from 'enzyme-to-json';
import AddToCart from '../components/AddToCart';
-import mountOptions from './mockMang';
+import mountOptions from './testUtils';
describe('<AddtoCart/>', () => {
it('renders and matches snapshot', () => {
diff --git a/frontend/__tests__/Cart.test.js b/frontend/__tests__/Cart.test.js
index c9c1fc3..0694a79 100644
--- a/frontend/__tests__/Cart.test.js
+++ b/frontend/__tests__/Cart.test.js
@@ -1,11 +1,11 @@
import React from 'react';
import { shallow, mount } from 'enzyme';
import toJSON from 'enzyme-to-json';
-import mountOptions from './mockMang';
+import mountOptions from './testUtils';
import wait from 'waait';
import Cart from '../components/Cart';
import { MockedProvider } from 'react-apollo/test-utils';
-import { fakeOrder } from './mockMang';
+import { fakeOrder } from './testUtils';
import { LOCAL_STATE_QUERY } from '../queries/queries';
const mocks = [
diff --git a/frontend/__tests__/EditUser.test.js b/frontend/__tests__/EditUser.test.js
index c68267f..7734a4a 100644
--- a/frontend/__tests__/EditUser.test.js
+++ b/frontend/__tests__/EditUser.test.js
@@ -2,7 +2,7 @@ import React from 'react';
import { shallow } from 'enzyme';
import toJSON from 'enzyme-to-json';
import EditUser from '../components/EditUser';
-import { mountWithApollo } from './mockMang';
+import { mountWithApollo } from './testUtils';
import wait from 'waait';
const currentUser = {
diff --git a/frontend/__tests__/Order.test.js b/frontend/__tests__/Order.test.js
index b88f9d3..1f2d691 100644
--- a/frontend/__tests__/Order.test.js
+++ b/frontend/__tests__/Order.test.js
@@ -4,7 +4,7 @@ import toJSON from 'enzyme-to-json';
import wait from 'waait';
import Order from '../components/Order';
import { MockedProvider } from 'react-apollo/test-utils';
-import { fakeOrder } from './mockMang';
+import { fakeOrder } from './testUtils';
import { SINGLE_ORDER_QUERY } from '../queries/queries';
const mocks = [
diff --git a/frontend/__tests__/Pagination.test.js b/frontend/__tests__/Pagination.test.js
index c72dac2..90078b8 100644
--- a/frontend/__tests__/Pagination.test.js
+++ b/frontend/__tests__/Pagination.test.js
@@ -3,7 +3,7 @@ import { shallow, mount } from 'enzyme';
import toJSON from 'enzyme-to-json';
import Pagination from '../components/Pagination';
import { MockedProvider } from 'react-apollo/test-utils';
-import { fakeItem } from './mockMang';
+import { fakeItem } from './testUtils';
import { ALL_ITEMS_QUERY } from '../queries/queries';
const data = {
diff --git a/frontend/__tests__/RemoveFromCart.test.js b/frontend/__tests__/RemoveFromCart.test.js
index c546b95..8bce7de 100644
--- a/frontend/__tests__/RemoveFromCart.test.js
+++ b/frontend/__tests__/RemoveFromCart.test.js
@@ -5,7 +5,7 @@ import { ApolloConsumer } from 'react-apollo';
import { MockedProvider } from 'react-apollo/test-utils';
import wait from 'waait';
import RemoveFromCart from '../components/RemoveFromCart';
-import { mountWithApollo, fakeCartItem, fakeUser } from './mockMang';
+import { mountWithApollo, fakeCartItem, fakeUser } from './testUtils';
import { CURRENT_USER_QUERY, REMOVE_FROM_CART_MUTATION } from '../queries/queries';
const mocks = [
diff --git a/frontend/__tests__/ResetRequest.test.js b/frontend/__tests__/ResetRequest.test.js
index c465f34..803f6b6 100644
--- a/frontend/__tests__/ResetRequest.test.js
+++ b/frontend/__tests__/ResetRequest.test.js
@@ -1,9 +1,8 @@
import React from 'react';
import { mount } from 'enzyme';
import toJSON from 'enzyme-to-json';
-import { ApolloProvider } from 'react-apollo';
import ResetRequest from '../components/ResetRequest';
-import mountOptions from './mockMang';
+import mountOptions from './testUtils';
describe('<ResetRequest/>', () => {
it('renders and matches snapshot', async () => {
diff --git a/frontend/__tests__/Signup.test.js b/frontend/__tests__/Signup.test.js
index f73c01c..aa6e1a2 100644
--- a/frontend/__tests__/Signup.test.js
+++ b/frontend/__tests__/Signup.test.js
@@ -3,7 +3,7 @@ import { mount } from 'enzyme';
import toJSON from 'enzyme-to-json';
import wait from 'waait';
import Signup from '../components/Signup';
-import mountOptions from './mockMang';
+import mountOptions from './testUtils';
function type(wrapper, name, value) {
wrapper.find(`input[name="${name}"]`).simulate('change', {
diff --git a/frontend/__tests__/SingleItem.test.js b/frontend/__tests__/SingleItem.test.js
index 77834e0..b6b5020 100644
--- a/frontend/__tests__/SingleItem.test.js
+++ b/frontend/__tests__/SingleItem.test.js
@@ -5,7 +5,7 @@ import toJSON from 'enzyme-to-json';
import SingleItem from '../components/SingleItem';
import { SINGLE_ITEM_QUERY } from '../queries/queries';
import { MockedProvider } from 'react-apollo/test-utils';
-import { fakeItem } from './mockMang';
+import { fakeItem } from './testUtils';
const data = {
items: [fakeItem()],
diff --git a/frontend/__tests__/TakeMyMoney.test.js b/frontend/__tests__/TakeMyMoney.test.js
index 0117d30..484ca7f 100644
--- a/frontend/__tests__/TakeMyMoney.test.js
+++ b/frontend/__tests__/TakeMyMoney.test.js
@@ -5,7 +5,7 @@ import NProgress from 'nprogress';
import TakeMyMoney from '../components/TakeMyMoney';
import Router from 'next/router';
import wait from 'waait';
-import mountOptions from './mockMang';
+import mountOptions from './testUtils';
Router.router = { push() {} };
diff --git a/frontend/__tests__/mockMang.js b/frontend/__tests__/mockMang.js
deleted file mode 100644
index 31d096f..0000000
--- a/frontend/__tests__/mockMang.js
+++ /dev/null
@@ -1,122 +0,0 @@
-import { importSchema } from 'graphql-import';
-import { makeExecutableSchema } from 'graphql-tools';
-import MockClient from 'graphql-mock';
-import casual from 'casual';
-import PropTypes from 'prop-types';
-import { ApolloProvider } from 'react-apollo';
-import { mount } from 'enzyme';
-
-// seed it so we get consistent results
-casual.seed(777);
-
-// By default graphql-mock will generate random numbers, IDs, and Strings of "Hello World"
-// We can overwrite any of those if we need to
-
-const mocks = {
- ID: () => casual.uuid,
- Node: () => casual.uuid,
- DateTime: () => new Date(1400000000000),
- Int: () => casual.integer(400, 5500),
- OrderItem: () => ({
- quantity: casual.integer(1, 10),
- image: 'dog.jpg',
- title: casual.title,
- description: casual.description,
- price: () => 50000,
- }),
- Item: () => ({
- title: casual.title,
- description: casual.description,
- price: () => 50000,
- image: 'dog.jpg',
- largeImage: 'large-dog.jpg',
- }),
- User: () => ({
- email: casual.email,
- name: casual.name,
- }),
-};
-
-const fakeItem = () => ({
- __typename: 'Item',
- id: '123',
- price: 5000,
- user: null,
- image: 'dog-small.jpg',
- title: 'dogs are best',
- description: 'dogs',
- largeImage: 'dog.jpg',
-});
-
-const fakeUser = () => ({
- __typename: 'User',
- id: '4234',
- name: casual.name,
- email: casual.email,
- permissions: ['ADMIN'],
- orders: [],
- cart: [],
-});
-
-const fakeOrderItem = () => ({
- id: casual.uuid,
- image: `${casual.word}.jpg`,
- title: casual.words(),
- price: 4234,
- quantity: 1,
- description: casual.words(),
-});
-
-const fakeOrder = () => ({
- __typename: 'Order',
- id: 'ord123',
- charge: 'ch_123',
- total: 40000,
- items: [fakeOrderItem(), fakeOrderItem()],
- createdAt: '2018-04 - 06T19: 24: 16.000Z',
- user: fakeUser(),
-});
-
-const fakeCartItem = overrides => ({
- __typename: 'CartItem',
- id: 'omg123',
- quantity: 3,
- item: fakeItem(),
- user: fakeUser(),
- ...overrides,
-});
-
-const resolvers = {
- // Query: {
- // cartOpen: () => true,
- // },
-};
-
-const typeDefs = importSchema('../backend/src/schema.graphql');
-
-const schema = makeExecutableSchema({
- typeDefs,
- resolvers,
- resolverValidationOptions: { requireResolversForResolveType: false },
-});
-
-// Creates a mocked client
-const mocked = new MockClient(schema, mocks);
-
-const mountOptions = {
- context: {
- client: mocked.client,
- },
- childContextTypes: {
- client: PropTypes.object,
- },
-};
-
-const mountWithApollo = Component => {
- const wrapper = mount(<ApolloProvider client={mocked.client}>{Component}</ApolloProvider>);
- return { wrapper, component: wrapper.children() };
-};
-
-export default mountOptions;
-
-export { mocked, mountWithApollo, fakeItem, fakeUser, fakeCartItem, fakeOrder, fakeOrderItem };
diff --git a/frontend/__tests__/testUtils.js b/frontend/__tests__/testUtils.js
new file mode 100644
index 0000000..6b7132a
--- /dev/null
+++ b/frontend/__tests__/testUtils.js
@@ -0,0 +1,55 @@
+import casual from 'casual';
+
+// seed it so we get consistent results
+casual.seed(777);
+
+const fakeItem = () => ({
+ __typename: 'Item',
+ id: '123',
+ price: 5000,
+ user: null,
+ image: 'dog-small.jpg',
+ title: 'dogs are best',
+ description: 'dogs',
+ largeImage: 'dog.jpg',
+});
+
+const fakeUser = () => ({
+ __typename: 'User',
+ id: '4234',
+ name: casual.name,
+ email: casual.email,
+ permissions: ['ADMIN'],
+ orders: [],
+ cart: [],
+});
+
+const fakeOrderItem = () => ({
+ id: casual.uuid,
+ image: `${casual.word}.jpg`,
+ title: casual.words(),
+ price: 4234,
+ quantity: 1,
+ description: casual.words(),
+});
+
+const fakeOrder = () => ({
+ __typename: 'Order',
+ id: 'ord123',
+ charge: 'ch_123',
+ total: 40000,
+ items: [fakeOrderItem(), fakeOrderItem()],
+ createdAt: '2018-04 - 06T19: 24: 16.000Z',
+ user: fakeUser(),
+});
+
+const fakeCartItem = overrides => ({
+ __typename: 'CartItem',
+ id: 'omg123',
+ quantity: 3,
+ item: fakeItem(),
+ user: fakeUser(),
+ ...overrides,
+});
+
+export { fakeItem, fakeUser, fakeCartItem, fakeOrder, fakeOrderItem };