From 217cfed064989816fbffcb1e285134c8e03ef5c7 Mon Sep 17 00:00:00 2001 From: Wes Bos Date: Tue, 20 Mar 2018 14:13:18 -0400 Subject: tests --- frontend/components/EditUser.js | 4 ++- frontend/components/RequestReset.js | 68 ------------------------------------- frontend/components/ResetRequest.js | 52 ++++++++++++++++++++++++++++ frontend/components/SingleItem.js | 1 + 4 files changed, 56 insertions(+), 69 deletions(-) delete mode 100644 frontend/components/RequestReset.js create mode 100644 frontend/components/ResetRequest.js (limited to 'frontend/components') diff --git a/frontend/components/EditUser.js b/frontend/components/EditUser.js index 5259d54..b885fe6 100644 --- a/frontend/components/EditUser.js +++ b/frontend/components/EditUser.js @@ -13,6 +13,7 @@ class EditUser extends React.Component { state = { changes: {}, }; + handleChange = e => { const { name, value } = e.target; const { me } = this.props.currentUser; @@ -48,10 +49,11 @@ class EditUser extends React.Component { me:
{JSON.stringify(me.name)}
Change: -
{JSON.stringify(this.state.changes)}
+
{JSON.stringify(this.state.changes)}
); } } export default compose(userEnhancer, updateUserEnhancer)(EditUser); +export { EditUser }; diff --git a/frontend/components/RequestReset.js b/frontend/components/RequestReset.js deleted file mode 100644 index 974924f..0000000 --- a/frontend/components/RequestReset.js +++ /dev/null @@ -1,68 +0,0 @@ -import React, { Component } from 'react'; -import { graphql, compose } from 'react-apollo'; -import { REQUEST_RESET_MUTATION } from '../queries'; -import Form from './styles/Form'; - -class ResetRequest extends Component { - state = { - email: `wesbos@gmail.com`, - password: 'abc123', - errors: [], - }; - - requestReset = async e => { - e.preventDefault(); - console.log(this.state.email); - const res = await this.props.requestReset({ - variables: { - email: this.state.email, - }, - }); - if (res.errors) { - this.setState({ errors: res.errors }); - } - console.log(res); - // // pull the values from state - // const { email, password } = this.state; - // this.setState({ loading: true, errors: [] }); - // const res = await this.props.signin({ - // // pass in those variables from state - // variables: { name, email, password }, - // }); - // if (res.errors) { - // this.setState({ errors: res.errors }); - // return; - // } - // localStorage.setItem('token', res.data.signin.token); - // // TODO refetch current user query - // this.props.currentUser.refetch(); - // this.setState({ loading: false }); - }; - - saveToState = e => { - const { name, value } = e.target; - this.setState({ [name]: value }); - }; - - render() { - return ( -
- {this.state.loading ? 'LOADING...' : null} - {this.state.errors ? this.state.errors.map(err =>

{err.message}

) : null} - - - -
- ); - } -} - -// When we submit this mutation, we need to update our store - we have a few ways to do that: -// One - we can go nucular and run refetchQueries() which will just go get everything - this is easy, but at the cost of efficiency. - -const requestResetEnhancer = graphql(REQUEST_RESET_MUTATION, { name: 'requestReset' }); - -export default compose(requestResetEnhancer)(ResetRequest); diff --git a/frontend/components/ResetRequest.js b/frontend/components/ResetRequest.js new file mode 100644 index 0000000..0910e5f --- /dev/null +++ b/frontend/components/ResetRequest.js @@ -0,0 +1,52 @@ +import React, { Component } from 'react'; +import { graphql, compose } from 'react-apollo'; +import PropTypes from 'prop-types'; +import { REQUEST_RESET_MUTATION } from '../queries'; +import Form from './styles/Form'; + +class ResetRequest extends Component { + static propTypes = { + requestReset: PropTypes.func.isRequired, + }; + + state = { + email: '', + errors: [], + }; + + requestReset = async e => { + e.preventDefault(); + const res = await this.props.requestReset({ + variables: { + email: this.state.email, + }, + }); + if (res.errors) { + this.setState({ errors: res.errors }); + } + }; + + saveToState = e => { + const { name, value } = e.target; + this.setState({ [name]: value }); + }; + + render() { + return ( +
+ {this.state.errors ? this.state.errors.map((err, i) =>

{err.message}

) : null} + + + +
+ ); + } +} + +const requestResetEnhancer = graphql(REQUEST_RESET_MUTATION, { name: 'requestReset' }); + +export default compose(requestResetEnhancer)(ResetRequest); +export { ResetRequest }; diff --git a/frontend/components/SingleItem.js b/frontend/components/SingleItem.js index f591f55..437fff1 100644 --- a/frontend/components/SingleItem.js +++ b/frontend/components/SingleItem.js @@ -16,3 +16,4 @@ const SingleItem = ({ findItem: { error, loading, items } }) => { }; export default compose(singleItemEnhancer)(SingleItem); +export { SingleItem }; -- cgit v1.3