diff options
author | Joram Wilander <jwawilander@gmail.com> | 2017-05-17 11:29:41 -0400 |
---|---|---|
committer | Corey Hulen <corey@hulen.com> | 2017-05-17 08:29:41 -0700 |
commit | 017cd2a9575149bb87f382f441b9c960b6816c9d (patch) | |
tree | cc1530ac9ab8796bf67f85eb11fa3aba114fd3df /webapp/tests/components/new_channel_modal.test.jsx | |
parent | a84a300947e3995945db2789dbf062c2e18c7b8e (diff) | |
download | chat-017cd2a9575149bb87f382f441b9c960b6816c9d.tar.gz chat-017cd2a9575149bb87f382f441b9c960b6816c9d.tar.bz2 chat-017cd2a9575149bb87f382f441b9c960b6816c9d.zip |
PLT-6406 Migrate new channel modal to be pure and use redux (#6416)
* Migrate new channel modal to be pure and use redux
* Add component tests
Diffstat (limited to 'webapp/tests/components/new_channel_modal.test.jsx')
-rw-r--r-- | webapp/tests/components/new_channel_modal.test.jsx | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/webapp/tests/components/new_channel_modal.test.jsx b/webapp/tests/components/new_channel_modal.test.jsx new file mode 100644 index 000000000..358a839a3 --- /dev/null +++ b/webapp/tests/components/new_channel_modal.test.jsx @@ -0,0 +1,79 @@ +// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +import React from 'react'; +import {shallow} from 'enzyme'; + +import Constants from 'utils/constants.jsx'; + +import NewChannelModal from 'components/new_channel_modal/new_channel_modal.jsx'; + +describe('components/NewChannelModal', () => { + afterEach(() => { + global.window.mm_config = null; + global.window.mm_license = null; + }); + + test('should match snapshot, modal not showing', () => { + function emptyFunction() {} //eslint-disable-line no-empty-function + + global.window.mm_license = {}; + global.window.mm_license.IsLicensed = 'false'; + + const wrapper = shallow( + <NewChannelModal + show={true} + channelType={Constants.OPEN_CHANNEL} + channelData={{name: 'testchannel', displayName: 'testchannel', header: '', purpose: ''}} + onSubmitChannel={emptyFunction} + onModalDismissed={emptyFunction} + onTypeSwitched={emptyFunction} + onChangeURLPressed={emptyFunction} + onDataChanged={emptyFunction} + /> + ); + expect(wrapper).toMatchSnapshot(); + }); + + test('should match snapshot, modal showing', () => { + function emptyFunction() {} //eslint-disable-line no-empty-function + + global.window.mm_license = {}; + global.window.mm_license.IsLicensed = 'false'; + + const wrapper = shallow( + <NewChannelModal + show={true} + channelType={Constants.OPEN_CHANNEL} + channelData={{name: 'testchannel', displayName: 'testchannel', header: '', purpose: ''}} + onSubmitChannel={emptyFunction} + onModalDismissed={emptyFunction} + onTypeSwitched={emptyFunction} + onChangeURLPressed={emptyFunction} + onDataChanged={emptyFunction} + /> + ); + expect(wrapper).toMatchSnapshot(); + }); + + test('should match snapshot, private channel filled in header and purpose', () => { + function emptyFunction() {} //eslint-disable-line no-empty-function + + global.window.mm_license = {}; + global.window.mm_license.IsLicensed = 'false'; + + const wrapper = shallow( + <NewChannelModal + show={true} + channelType={Constants.PRIVATE_CHANNEL} + channelData={{name: 'testchannel', displayName: 'testchannel', header: 'some header', purpose: 'some purpose'}} + onSubmitChannel={emptyFunction} + onModalDismissed={emptyFunction} + onTypeSwitched={emptyFunction} + onChangeURLPressed={emptyFunction} + onDataChanged={emptyFunction} + /> + ); + expect(wrapper).toMatchSnapshot(); + }); +}); |