diff options
Diffstat (limited to 'web-ui/src/account_recovery/page.spec.js')
-rw-r--r-- | web-ui/src/account_recovery/page.spec.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/web-ui/src/account_recovery/page.spec.js b/web-ui/src/account_recovery/page.spec.js index b34f0f32..37c7be6f 100644 --- a/web-ui/src/account_recovery/page.spec.js +++ b/web-ui/src/account_recovery/page.spec.js @@ -1,7 +1,12 @@ import { shallow } from 'enzyme'; import expect from 'expect'; import React from 'react'; + import { Page } from 'src/account_recovery/page'; +import Header from 'src/common/header/header'; +import AdminRecoveryCodeForm from 'src/account_recovery/forms/admin_recovery_code_form'; +import UserRecoveryCodeForm from 'src/account_recovery/forms/user_recovery_code_form'; +import Footer from 'src/common/footer/footer'; describe('Account Recovery Page', () => { let page; @@ -14,4 +19,31 @@ describe('Account Recovery Page', () => { it('renders account recovery page title', () => { expect(page.props().title).toEqual('account-recovery.page-title'); }); + + it('renders header', () => { + expect(page.find(Header).length).toEqual(1); + }); + + it('renders footer', () => { + expect(page.find(Footer).length).toEqual(1); + }); + + context('main content', () => { + let pageInstance; + + beforeEach(() => { + pageInstance = page.instance(); + }); + + it('renders admin recovery code form as default form', () => { + expect(page.find(AdminRecoveryCodeForm).length).toEqual(1); + }); + + it('renders user recovery code form when admin code submitted', () => { + pageInstance.nextStep({ preventDefault: () => {} }); + + expect(page.find(AdminRecoveryCodeForm).length).toEqual(0); + expect(page.find(UserRecoveryCodeForm).length).toEqual(1); + }); + }); }); |