From 0c93e470fd2ff59bf59a13cc012ff33fd7a40704 Mon Sep 17 00:00:00 2001 From: Winnie Hellmann Date: Tue, 4 Jun 2019 15:34:17 +0000 Subject: [PATCH] Extract setIssueDetail() into issue boards store --- .../javascripts/boards/components/board_new_issue.vue | 2 +- app/assets/javascripts/boards/index.js | 2 +- app/assets/javascripts/boards/stores/boards_store.js | 6 +++++- spec/javascripts/boards/boards_store_spec.js | 11 +++++++++++ 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/boards/components/board_new_issue.vue b/app/assets/javascripts/boards/components/board_new_issue.vue index dc1bdc23b5e..63dc99db086 100644 --- a/app/assets/javascripts/boards/components/board_new_issue.vue +++ b/app/assets/javascripts/boards/components/board_new_issue.vue @@ -72,7 +72,7 @@ export default { // Need this because our jQuery very kindly disables buttons on ALL form submissions $(this.$refs.submitButton).enable(); - boardsStore.detail.issue = issue; + boardsStore.setIssueDetail(issue); boardsStore.detail.list = this.list; }) .catch(() => { diff --git a/app/assets/javascripts/boards/index.js b/app/assets/javascripts/boards/index.js index bc6a3cf212e..e9cab3e3bba 100644 --- a/app/assets/javascripts/boards/index.js +++ b/app/assets/javascripts/boards/index.js @@ -168,7 +168,7 @@ export default () => { }); } - boardsStore.detail.issue = newIssue; + boardsStore.setIssueDetail(newIssue); }, clearDetailIssue() { boardsStore.clearDetailIssue(); diff --git a/app/assets/javascripts/boards/stores/boards_store.js b/app/assets/javascripts/boards/stores/boards_store.js index d6718b96f2c..f72ab189015 100644 --- a/app/assets/javascripts/boards/stores/boards_store.js +++ b/app/assets/javascripts/boards/stores/boards_store.js @@ -212,7 +212,11 @@ const boardsStore = { }, clearDetailIssue() { - this.detail.issue = {}; + this.setIssueDetail({}); + }, + + setIssueDetail(issueDetail) { + this.detail.issue = issueDetail; }, }; diff --git a/spec/javascripts/boards/boards_store_spec.js b/spec/javascripts/boards/boards_store_spec.js index e77768e3597..68e66346bfd 100644 --- a/spec/javascripts/boards/boards_store_spec.js +++ b/spec/javascripts/boards/boards_store_spec.js @@ -322,6 +322,17 @@ describe('Store', () => { }); }); + describe('setIssueDetail', () => { + it('sets issue details', () => { + boardsStore.detail.issue = 'some details'; + + const dummyValue = 'new details'; + boardsStore.setIssueDetail(dummyValue); + + expect(boardsStore.detail.issue).toEqual(dummyValue); + }); + }); + describe('startMoving', () => { it('stores list and issue', () => { const dummyIssue = 'some issue';