diff options
Diffstat (limited to 'features')
| -rw-r--r-- | features/project/forked_merge_requests.feature | 7 | ||||
| -rw-r--r-- | features/steps/project/project_forked_merge_requests.rb | 17 |
2 files changed, 24 insertions, 0 deletions
diff --git a/features/project/forked_merge_requests.feature b/features/project/forked_merge_requests.feature index 45f4f1251a2..4312d5748b8 100644 --- a/features/project/forked_merge_requests.feature +++ b/features/project/forked_merge_requests.feature @@ -41,3 +41,10 @@ Feature: Project Forked Merge Requests Then I see the edit page prefilled for "Merge Request On Forked Project" + @javascript + Scenario: I cannot submit an invalid merge request + Given I visit project "Forked Shop" merge requests page + And I click link "New Merge Request" + And I fill out an invalid "Merge Request On Forked Project" merge request + And I submit the merge request + Then I should see validation errors
\ No newline at end of file diff --git a/features/steps/project/project_forked_merge_requests.rb b/features/steps/project/project_forked_merge_requests.rb index 10d26a1498b..7579dce9268 100644 --- a/features/steps/project/project_forked_merge_requests.rb +++ b/features/steps/project/project_forked_merge_requests.rb @@ -152,6 +152,23 @@ class ProjectForkedMergeRequests < Spinach::FeatureSteps end + And 'I fill out an invalid "Merge Request On Forked Project" merge request' do + #If this isn't filled in the rest of the validations won't be triggered + fill_in "merge_request_title", with: "Merge Request On Forked Project" + find(:select, "merge_request_source_project_id", {}).value.should == @forked_project.id.to_s + find(:select, "merge_request_target_project_id", {}).value.should == @forked_project.id.to_s + find(:select, "merge_request_source_branch", {}).value.should == "" + find(:select, "merge_request_target_branch", {}).value.should == "" + end + + + Then 'I should see validation errors' do + page.should have_content "Source branch can't be blank" + page.should have_content "Target branch can't be blank" + page.should have_content "Branch conflict You can not use same project/branch for source and target" + end + + def project @project ||= Project.find_by_name!("Shop") end |
