From 1525853f6fe09e83d897a5380baa923e3b680b50 Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Fri, 12 May 2017 23:02:41 +0100 Subject: Adds polling function to environments table Adds polling function to folder table Adds missing eventhub to folder table --- .../environments/components/environment.vue | 100 ++++++++++++++------ .../folder/environments_folder_view.vue | 102 +++++++++++++++------ .../environments/services/environments_service.js | 3 +- .../environments/stores/environments_store.js | 6 ++ changelogs/unreleased/zj-realtime-env-list.yml | 4 + spec/javascripts/environments/environment_spec.js | 2 + .../environments/environments_store_spec.js | 9 ++ .../folder/environments_folder_view_spec.js | 1 + 8 files changed, 174 insertions(+), 53 deletions(-) create mode 100644 changelogs/unreleased/zj-realtime-env-list.yml diff --git a/app/assets/javascripts/environments/components/environment.vue b/app/assets/javascripts/environments/components/environment.vue index d4e13f3c84a..5fad3fb9742 100644 --- a/app/assets/javascripts/environments/components/environment.vue +++ b/app/assets/javascripts/environments/components/environment.vue @@ -1,5 +1,6 @@ diff --git a/app/assets/javascripts/environments/services/environments_service.js b/app/assets/javascripts/environments/services/environments_service.js index 8adb53ea86d..03ab74b3338 100644 --- a/app/assets/javascripts/environments/services/environments_service.js +++ b/app/assets/javascripts/environments/services/environments_service.js @@ -10,7 +10,8 @@ export default class EnvironmentsService { this.folderResults = 3; } - get(scope, page) { + get(options = {}) { + const { scope, page } = options; return this.environments.get({ scope, page }); } diff --git a/app/assets/javascripts/environments/stores/environments_store.js b/app/assets/javascripts/environments/stores/environments_store.js index 158e7922e3c..8a2f6a473de 100644 --- a/app/assets/javascripts/environments/stores/environments_store.js +++ b/app/assets/javascripts/environments/stores/environments_store.js @@ -153,4 +153,10 @@ export default class EnvironmentsStore { return updatedEnvironments; } + getOpenFolders() { + const environments = this.state.environments; + + return environments.filter(env => env.isFolder && env.isOpen); + } + } diff --git a/changelogs/unreleased/zj-realtime-env-list.yml b/changelogs/unreleased/zj-realtime-env-list.yml new file mode 100644 index 00000000000..f2233e9ba50 --- /dev/null +++ b/changelogs/unreleased/zj-realtime-env-list.yml @@ -0,0 +1,4 @@ +--- +title: Makes environment table realtime +merge_request: +author: diff --git a/spec/javascripts/environments/environment_spec.js b/spec/javascripts/environments/environment_spec.js index 1c54cc3054c..ef799fcdcb1 100644 --- a/spec/javascripts/environments/environment_spec.js +++ b/spec/javascripts/environments/environment_spec.js @@ -76,6 +76,8 @@ describe('Environment', () => { component = new EnvironmentsComponent({ el: document.querySelector('#environments-list-view'), }); + + // component.fetchEnvironments(); }); afterEach(() => { diff --git a/spec/javascripts/environments/environments_store_spec.js b/spec/javascripts/environments/environments_store_spec.js index f617c4bdffe..6e855530b21 100644 --- a/spec/javascripts/environments/environments_store_spec.js +++ b/spec/javascripts/environments/environments_store_spec.js @@ -123,4 +123,13 @@ describe('Store', () => { expect(store.state.paginationInformation).toEqual(expectedResult); }); }); + + describe('getOpenFolders', () => { + it('should return open folder', () => { + store.storeEnvironments(serverData); + + store.toggleFolder(store.state.environments[1]); + expect(store.getOpenFolders()[0]).toEqual(store.state.environments[1]); + }); + }); }); diff --git a/spec/javascripts/environments/folder/environments_folder_view_spec.js b/spec/javascripts/environments/folder/environments_folder_view_spec.js index 350078ad5f5..3052c27993c 100644 --- a/spec/javascripts/environments/folder/environments_folder_view_spec.js +++ b/spec/javascripts/environments/folder/environments_folder_view_spec.js @@ -39,6 +39,7 @@ describe('Environments Folder View', () => { component = new EnvironmentsFolderViewComponent({ el: document.querySelector('#environments-folder-list-view'), }); + // component.fetchEnvironments(); }); afterEach(() => { -- cgit v1.2.1