From a6af043686e4375d7944e91cae3d5b63c59edab0 Mon Sep 17 00:00:00 2001 From: Wes Bos Date: Thu, 22 Mar 2018 16:29:31 -0400 Subject: Migrate to render props --- backend/__tests__/user.test.js | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) (limited to 'backend/__tests__/user.test.js') diff --git a/backend/__tests__/user.test.js b/backend/__tests__/user.test.js index bedca3f..f73ed79 100644 --- a/backend/__tests__/user.test.js +++ b/backend/__tests__/user.test.js @@ -1,9 +1,8 @@ -const { request } = require('graphql-request'); -const createServer = require('../src/createServer'); - import { SIGNUP_MUTATION } from '../../frontend/queries/index'; +import { print } from 'graphql/language/printer'; -console.log(SIGNUP_MUTATION); +const { request } = require('graphql-request'); +const createServer = require('../src/createServer'); let server; const port = 2342; @@ -18,9 +17,26 @@ afterAll(async () => { }); describe('User C.R.U.D. Operations', () => { - it('Creates a user', () => { - const query = ` + const email = `wes${Date.now()}@gmail.com`; - `; + it('Creates a user', async () => { + const { signup } = await request(endpoint, print(SIGNUP_MUTATION), { + name: 'Wes Bos', + email, + password: 'test', + }); + expect(signup.token).toBeTruthy(); + expect(signup.user.name).toBe('Wes Bos'); + expect(signup.user.email).toBe(email); }); + + it('throws an error with a duplicate signup', async () => + request(endpoint, print(SIGNUP_MUTATION), { + name: 'wes bos', + email, + password: 'test', + }).catch(err => { + expect(err.message).toContain('A unique constraint would be violated on User.'); + console.log(err.message); + })); }); -- cgit v1.3