summaryrefslogtreecommitdiffstats
path: root/webapp/tests/components/new_channel_modal.test.jsx
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2017-05-17 11:29:41 -0400
committerCorey Hulen <corey@hulen.com>2017-05-17 08:29:41 -0700
commit017cd2a9575149bb87f382f441b9c960b6816c9d (patch)
treecc1530ac9ab8796bf67f85eb11fa3aba114fd3df /webapp/tests/components/new_channel_modal.test.jsx
parenta84a300947e3995945db2789dbf062c2e18c7b8e (diff)
downloadchat-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.jsx79
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();
+ });
+});