add feature specs to test toggling of merge commit message between message with description and without
This commit is contained in:
parent
4525cdaec3
commit
f3378630c1
2 changed files with 75 additions and 3 deletions
|
@ -1,6 +1,6 @@
|
||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
|
|
||||||
feature 'Merge Commit Description', feature: true do
|
feature 'Merge Request closing issues message', feature: true do
|
||||||
let(:user) { create(:user) }
|
let(:user) { create(:user) }
|
||||||
let(:project) { create(:project, :public) }
|
let(:project) { create(:project, :public) }
|
||||||
let(:issue_1) { create(:issue, project: project)}
|
let(:issue_1) { create(:issue, project: project)}
|
||||||
|
@ -21,8 +21,6 @@ feature 'Merge Commit Description', feature: true do
|
||||||
login_as user
|
login_as user
|
||||||
|
|
||||||
visit namespace_project_merge_request_path(project.namespace, project, merge_request)
|
visit namespace_project_merge_request_path(project.namespace, project, merge_request)
|
||||||
|
|
||||||
click_link 'Modify commit message'
|
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'not closing or mentioning any issue' do
|
context 'not closing or mentioning any issue' do
|
||||||
|
|
|
@ -0,0 +1,74 @@
|
||||||
|
require 'spec_helper'
|
||||||
|
|
||||||
|
feature 'Clicking toggle commit message link', feature: true, js: true do
|
||||||
|
let(:user) { create(:user) }
|
||||||
|
let(:project) { create(:project, :public) }
|
||||||
|
let(:issue_1) { create(:issue, project: project)}
|
||||||
|
let(:issue_2) { create(:issue, project: project)}
|
||||||
|
let(:merge_request) do
|
||||||
|
create(
|
||||||
|
:merge_request,
|
||||||
|
:simple,
|
||||||
|
source_project: project,
|
||||||
|
description: "Description\n\nclosing #{issue_1.to_reference}, #{issue_2.to_reference}"
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:textbox) { page.find(:css, '.js-commit-message', visible: false) }
|
||||||
|
let(:include_link) { page.find(:css, '.js-with-description-link', visible: false) }
|
||||||
|
let(:do_not_include_link) { page.find(:css, '.js-without-description-link', visible: false) }
|
||||||
|
let(:default_message) do
|
||||||
|
[
|
||||||
|
"Merge branch 'feature' into 'master'",
|
||||||
|
merge_request.title,
|
||||||
|
"Closes issues #{issue_1.to_reference} and #{issue_2.to_reference}",
|
||||||
|
"See merge request #{merge_request.to_reference}"
|
||||||
|
].join("\n\n")
|
||||||
|
end
|
||||||
|
let(:message_with_description) do
|
||||||
|
[
|
||||||
|
"Merge branch 'feature' into 'master'",
|
||||||
|
merge_request.title,
|
||||||
|
merge_request.description,
|
||||||
|
"See merge request #{merge_request.to_reference}"
|
||||||
|
].join("\n\n")
|
||||||
|
end
|
||||||
|
|
||||||
|
before do
|
||||||
|
project.team << [user, :master]
|
||||||
|
|
||||||
|
login_as user
|
||||||
|
|
||||||
|
visit namespace_project_merge_request_path(project.namespace, project, merge_request)
|
||||||
|
|
||||||
|
expect(textbox).not_to be_visible
|
||||||
|
click_link "Modify commit message"
|
||||||
|
expect(textbox).to be_visible
|
||||||
|
end
|
||||||
|
|
||||||
|
it "toggles commit message between message with description and without description " do
|
||||||
|
expect(textbox.value).to eq(default_message)
|
||||||
|
|
||||||
|
click_link "Include description in commit message"
|
||||||
|
|
||||||
|
expect(textbox.value).to eq(message_with_description)
|
||||||
|
|
||||||
|
click_link "Don't include description in commit message"
|
||||||
|
|
||||||
|
expect(textbox.value).to eq(default_message)
|
||||||
|
end
|
||||||
|
|
||||||
|
it "toggles link between 'Include description' and 'Don't include description'" do
|
||||||
|
expect(include_link).to be_visible
|
||||||
|
expect(do_not_include_link).not_to be_visible
|
||||||
|
|
||||||
|
click_link "Include description in commit message"
|
||||||
|
|
||||||
|
expect(include_link).not_to be_visible
|
||||||
|
expect(do_not_include_link).to be_visible
|
||||||
|
|
||||||
|
click_link "Don't include description in commit message"
|
||||||
|
|
||||||
|
expect(include_link).to be_visible
|
||||||
|
expect(do_not_include_link).not_to be_visible
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in a new issue