summaryrefslogtreecommitdiffstats
path: root/webapp/tests/components
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/tests/components')
-rw-r--r--webapp/tests/components/integrations/__snapshots__/installed_command.test.jsx.snap103
-rw-r--r--webapp/tests/components/integrations/installed_command.test.jsx83
2 files changed, 186 insertions, 0 deletions
diff --git a/webapp/tests/components/integrations/__snapshots__/installed_command.test.jsx.snap b/webapp/tests/components/integrations/__snapshots__/installed_command.test.jsx.snap
new file mode 100644
index 000000000..910b35e25
--- /dev/null
+++ b/webapp/tests/components/integrations/__snapshots__/installed_command.test.jsx.snap
@@ -0,0 +1,103 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`components/integrations/InstalledCommand should filter out command 1`] = `null`;
+
+exports[`components/integrations/InstalledCommand should match snapshot 1`] = `
+<div
+ className="backstage-list__item"
+>
+ <div
+ className="item-details"
+ >
+ <div
+ className="item-details__row"
+ >
+ <span
+ className="item-details__name"
+ >
+ test
+ </span>
+ <span
+ className="item-details__trigger"
+ >
+ - /trigger test
+ </span>
+ </div>
+ <div
+ className="item-details__row"
+ >
+ <span
+ className="item-details__description"
+ >
+ test
+ </span>
+ </div>
+ <div
+ className="item-details__row"
+ >
+ <span
+ className="item-details__token"
+ >
+ <FormattedMessage
+ defaultMessage="Token: {token}"
+ id="installed_integrations.token"
+ values={
+ Object {
+ "token": "testToken",
+ }
+ }
+ />
+ </span>
+ </div>
+ <div
+ className="item-details__row"
+ >
+ <span
+ className="item-details__creation"
+ >
+ <FormattedMessage
+ defaultMessage="Created by {creator} on {createAt, date, full}"
+ id="installed_integrations.creation"
+ values={
+ Object {
+ "createAt": "1499722850203",
+ "creator": "test",
+ }
+ }
+ />
+ </span>
+ </div>
+ </div>
+ <div
+ className="item-actions"
+ >
+ <a
+ href="#"
+ onClick={[Function]}
+ >
+ <FormattedMessage
+ defaultMessage="Regenerate Token"
+ id="installed_integrations.regenToken"
+ values={Object {}}
+ />
+ </a>
+ -
+ <Link
+ onlyActiveOnIndex={false}
+ style={Object {}}
+ to="/test/integrations/commands/edit?id=r5tpgt4iepf45jt768jz84djic"
+ >
+ <FormattedMessage
+ defaultMessage="Edit"
+ id="installed_integrations.edit"
+ values={Object {}}
+ />
+ </Link>
+ -
+ <DeleteIntegration
+ messageId="installed_commands.delete.confirm"
+ onDelete={[Function]}
+ />
+ </div>
+</div>
+`;
diff --git a/webapp/tests/components/integrations/installed_command.test.jsx b/webapp/tests/components/integrations/installed_command.test.jsx
new file mode 100644
index 000000000..b38d04754
--- /dev/null
+++ b/webapp/tests/components/integrations/installed_command.test.jsx
@@ -0,0 +1,83 @@
+// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
+// See License.txt for license information.
+
+import React from 'react';
+import {shallow} from 'enzyme';
+
+import InstalledCommand from 'components/integrations/components/installed_command.jsx';
+
+describe('components/integrations/InstalledCommand', () => {
+ const emptyFunction = jest.fn();
+ const command = {
+ id: 'r5tpgt4iepf45jt768jz84djic',
+ display_name: 'test',
+ description: 'test',
+ trigger: 'trigger',
+ auto_complete: 'test',
+ auto_complete_hint: 'test',
+ token: 'testToken',
+ create_at: '1499722850203'
+ };
+
+ test('should match snapshot', () => {
+ const wrapper = shallow(
+ <InstalledCommand
+ team={{
+ name: 'test'
+ }}
+ command={command}
+ onRegenToken={emptyFunction}
+ onDelete={emptyFunction}
+ filter={'trigger'}
+ creator={{
+ username: 'test'
+ }}
+ canChange={true}
+ />
+ );
+ expect(wrapper).toMatchSnapshot();
+ });
+
+ test('should call onRegenToken function', () => {
+ const onRegenToken = jest.fn();
+ const wrapper = shallow(
+ <InstalledCommand
+ team={{
+ name: 'test'
+ }}
+ command={command}
+ onRegenToken={onRegenToken}
+ onDelete={emptyFunction}
+ filter={''}
+ creator={{
+ username: 'test'
+ }}
+ canChange={true}
+ />
+ );
+ wrapper.find('div.item-actions a').first().simulate('click', {preventDefault() {
+ return jest.fn();
+ }});
+
+ expect(onRegenToken).toBeCalled();
+ });
+
+ test('should filter out command', () => {
+ const wrapper = shallow(
+ <InstalledCommand
+ team={{
+ name: 'test'
+ }}
+ command={command}
+ onRegenToken={emptyFunction}
+ onDelete={emptyFunction}
+ filter={'filter'}
+ creator={{
+ username: 'test'
+ }}
+ canChange={true}
+ />
+ );
+ expect(wrapper).toMatchSnapshot();
+ });
+});