summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlfredo Sumaran <alfredo@gitlab.com>2016-12-09 22:49:08 +0000
committerAlfredo Sumaran <alfredo@gitlab.com>2016-12-09 22:49:08 +0000
commit3a66c2398ac3ae85b4703b2edd9f9adf62494759 (patch)
treeba5cafd02868ee23e9a6f1127a909639897d5567
parent4f365066330365391c11eeb408e884c021465a00 (diff)
parent3ce2ba1afb1dad707e1e3ac2bb5ff856d06f621e (diff)
downloadgitlab-ce-3a66c2398ac3ae85b4703b2edd9f9adf62494759.tar.gz
Merge branch 'issue_24020' into 'master'
fix display hook error message ## What does this MR do? Fix hook error message display. ## Are there points in the code the reviewer needs to double check? Probably Hook will return the plain multi line text. It is better `pre` tag than `h4`. I thought of another good looking display, but I did not come up with it. :sweat: ## Why was this MR needed? When the hook returns an STDERR, "Merge in progress" button spinning forever. Due to javascript's error. ## Screenshots (if relevant) When update hook returns an error like ``` XXXXXXXX YYYYYYYY ZZZZZZZZ ``` ![screen_shot](/uploads/8dac77972a309dfcb72c741dffbd7270/screen_shot.png) ## What are the relevant issue numbers? Closes #24020 See merge request !7775
-rw-r--r--app/assets/javascripts/merge_request_widget.js.es62
-rw-r--r--changelogs/unreleased/issue_24020.yml4
-rw-r--r--spec/javascripts/merge_request_widget_spec.js12
3 files changed, 17 insertions, 1 deletions
diff --git a/app/assets/javascripts/merge_request_widget.js.es6 b/app/assets/javascripts/merge_request_widget.js.es6
index a55fe9df0b3..d9495e50388 100644
--- a/app/assets/javascripts/merge_request_widget.js.es6
+++ b/app/assets/javascripts/merge_request_widget.js.es6
@@ -101,7 +101,7 @@
urlSuffix = deleteSourceBranch ? '?deleted_source_branch=true' : '';
return window.location.href = window.location.pathname + urlSuffix;
} else if (data.merge_error) {
- return this.$widgetBody.html("<h4>" + data.merge_error + "</h4>");
+ return _this.$widgetBody.html("<h4>" + data.merge_error + "</h4>");
} else {
callback = function() {
return merge_request_widget.mergeInProgress(deleteSourceBranch);
diff --git a/changelogs/unreleased/issue_24020.yml b/changelogs/unreleased/issue_24020.yml
new file mode 100644
index 00000000000..87310b75296
--- /dev/null
+++ b/changelogs/unreleased/issue_24020.yml
@@ -0,0 +1,4 @@
+---
+title: "fix display hook error message"
+merge_request: 7775
+author: basyura
diff --git a/spec/javascripts/merge_request_widget_spec.js b/spec/javascripts/merge_request_widget_spec.js
index 62890f1ca96..6f91529db00 100644
--- a/spec/javascripts/merge_request_widget_spec.js
+++ b/spec/javascripts/merge_request_widget_spec.js
@@ -106,6 +106,18 @@
});
});
+ describe('mergeInProgress', function() {
+ it('should display error with h4 tag', function() {
+ spyOn(this.class.$widgetBody, 'html').and.callFake(function(html) {
+ expect(html).toBe('<h4>Sorry, something went wrong.</h4>');
+ });
+ spyOn($, 'ajax').and.callFake(function(e) {
+ e.success({ merge_error: 'Sorry, something went wrong.' });
+ });
+ this.class.mergeInProgress(null);
+ });
+ });
+
return describe('getCIStatus', function() {
beforeEach(function() {
this.ciStatusData = {