summaryrefslogtreecommitdiffstats
path: root/stepped-solutions/FINISHED/frontend/__tests__/PleaseSignIn.test.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-09-13 14:18:56 -0400
committerWes Bos <wesbos@gmail.com>2018-09-13 14:18:56 -0400
commit8a5825d52271d712ec7c8348447d433067e13ef2 (patch)
treeba07c218c1b2d4e59c154f2059b69fd858ae65fe /stepped-solutions/FINISHED/frontend/__tests__/PleaseSignIn.test.js
parentb0d25a9ad3cc1df2fcc11ddb84e4603b94520b09 (diff)
DONE
Diffstat (limited to 'stepped-solutions/FINISHED/frontend/__tests__/PleaseSignIn.test.js')
-rw-r--r--stepped-solutions/FINISHED/frontend/__tests__/PleaseSignIn.test.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/stepped-solutions/FINISHED/frontend/__tests__/PleaseSignIn.test.js b/stepped-solutions/FINISHED/frontend/__tests__/PleaseSignIn.test.js
new file mode 100644
index 0000000..7d476b4
--- /dev/null
+++ b/stepped-solutions/FINISHED/frontend/__tests__/PleaseSignIn.test.js
@@ -0,0 +1,51 @@
+import { mount } from 'enzyme';
+import wait from 'waait';
+import PleaseSignIn from '../components/PleaseSignIn';
+import { CURRENT_USER_QUERY } from '../components/User';
+import { MockedProvider } from 'react-apollo/test-utils';
+import { fakeUser } from '../lib/testUtils';
+
+const notSignedInMocks = [
+ {
+ request: { query: CURRENT_USER_QUERY },
+ result: { data: { me: null } },
+ },
+];
+
+const signedInMocks = [
+ {
+ request: { query: CURRENT_USER_QUERY },
+ result: { data: { me: fakeUser() } },
+ },
+];
+
+describe('<PleaseSignIn/>', () => {
+ it('renders the sign in dialog to logged out users', async () => {
+ const wrapper = mount(
+ <MockedProvider mocks={notSignedInMocks}>
+ <PleaseSignIn />
+ </MockedProvider>
+ );
+ await wait();
+ wrapper.update();
+ expect(wrapper.text()).toContain('Please Sign In before Continuing');
+ const SignIn = wrapper.find('Signin');
+ expect(SignIn.exists()).toBe(true);
+ });
+
+ it('renders the child component when the user is signed in', async () => {
+ const Hey = () => <p>Hey!</p>;
+ const wrapper = mount(
+ <MockedProvider mocks={signedInMocks}>
+ <PleaseSignIn>
+ <Hey />
+ </PleaseSignIn>
+ </MockedProvider>
+ );
+
+ await wait();
+ wrapper.update();
+ // expect(wrapper.find('Hey').exists()).toBe(true);
+ expect(wrapper.contains(<Hey />)).toBe(true);
+ });
+});