From 8c3f60e41d8e1f6d1be721d4839e2a537d7923b1 Mon Sep 17 00:00:00 2001 From: Harrison Healey Date: Wed, 12 Oct 2016 11:30:05 -0400 Subject: [PATCH] Changed actions tests to use TestHelper --- test/actions/general.test.js | 81 +++++++++++++++++++----------------- test/test_helper.js | 15 ++++++- 2 files changed, 55 insertions(+), 41 deletions(-) diff --git a/test/actions/general.test.js b/test/actions/general.test.js index b8fe05c53..10ae793d6 100644 --- a/test/actions/general.test.js +++ b/test/actions/general.test.js @@ -6,64 +6,67 @@ import assert from 'assert'; import * as Actions from 'actions/general.js'; import Client from 'client/client_instance.js'; import configureStore from 'store/configureStore.js'; +import TestHelper from 'test_helper.js'; describe('Actions.General', () => { - beforeEach(() => { - Client.setUrl('http://localhost:8065'); - }); - it('getClientConfig', (done) => { - const store = configureStore(); + TestHelper.initClient(Client, () => { + const store = configureStore(); - store.subscribe(() => { - const clientConfig = store.getState().entities.general.clientConfig; + store.subscribe(() => { + const clientConfig = store.getState().entities.general.clientConfig; - if (!clientConfig.loading) { - if (clientConfig.error) { - done(new Error(clientConfig.error)); - } else { - // Check a few basic fields since they may change over time - assert.ok(clientConfig.data.Version); - assert.ok(clientConfig.data.BuildNumber); - assert.ok(clientConfig.data.BuildDate); - assert.ok(clientConfig.data.BuildHash); + if (!clientConfig.loading) { + if (clientConfig.error) { + done(new Error(clientConfig.error)); + } else { + // Check a few basic fields since they may change over time + assert.ok(clientConfig.data.Version); + assert.ok(clientConfig.data.BuildNumber); + assert.ok(clientConfig.data.BuildDate); + assert.ok(clientConfig.data.BuildHash); - done(); + done(); + } } - } - }); + }); - Actions.getClientConfig()(store.dispatch, store.getState); + Actions.getClientConfig()(store.dispatch, store.getState); + }); }); it('getPing', (done) => { - const store = configureStore(); + TestHelper.initClient(Client, () => { + const store = configureStore(); - store.subscribe(() => { - const ping = store.getState().entities.general.ping; + store.subscribe(() => { + const ping = store.getState().entities.general.ping; - if (ping.error) { - done(new Error(ping.error)); - } else if (!ping.loading) { - done(); - } + if (ping.error) { + done(new Error(ping.error)); + } else if (!ping.loading) { + done(); + } + }); + + Actions.getPing()(store.dispatch, store.getState); }); - - Actions.getPing()(store.dispatch, store.getState); }); it('getPing - Invalid URL', (done) => { - const store = configureStore(); + TestHelper.initClient(Client, () => { + const store = configureStore(); - store.subscribe(() => { - const ping = store.getState().entities.general.ping; + store.subscribe(() => { + const ping = store.getState().entities.general.ping; - if (!ping.loading && ping.error) { - done(); - } + if (!ping.loading && ping.error) { + done(); + } + }); + + Client.setUrl('https://example.com/fake/url'); + Actions.getPing()(store.dispatch, store.getState); }); - - Client.setUrl('https://example.com/fake/url'); - Actions.getPing()(store.dispatch, store.getState); }); }); diff --git a/test/test_helper.js b/test/test_helper.js index c02de3448..c34de9818 100644 --- a/test/test_helper.js +++ b/test/test_helper.js @@ -10,6 +10,11 @@ const PASSWORD = 'password1'; class TestHelper { constructor() { this.basicClient = null; + + this.basicUser = null; + this.basicTeam = null; + this.basicChannel = null; + this.basicPost = null; } assertStatusOkay = (data) => { @@ -88,8 +93,8 @@ class TestHelper { }; } - initBasic = (callback) => { - const client = this.createClient(); + initClient = (client, callback) => { + client.setUrl('http://localhost:8065'); client.createUser( this.fakeUser(), @@ -160,6 +165,12 @@ class TestHelper { } ); } + + initBasic = (callback) => { + this.basicClient = this.createClient(); + + this.initClient(this.basicClient, callback); + } } export default new TestHelper(); \ No newline at end of file