7 changed files with 85 additions and 9 deletions
@ -0,0 +1,23 @@
|
||||
<% content_for :before_content do %> |
||||
<% content_for :title, "Are you sure you want to delete this merge request?" %> |
||||
<%= govuk_back_link(href: :back) %> |
||||
<% end %> |
||||
|
||||
<div class="govuk-grid-row"> |
||||
<div class="govuk-grid-column-two-thirds-from-desktop"> |
||||
<h1 class="govuk-heading-xl"> |
||||
<%= content_for(:title) %> |
||||
</h1> |
||||
|
||||
<%= govuk_warning_text(text: "You cannot undo this.") %> |
||||
|
||||
<div class="govuk-button-group"> |
||||
<%= govuk_button_to( |
||||
"Delete merge request", |
||||
delete_merge_request_path(@merge_request), |
||||
method: :delete, |
||||
) %> |
||||
<%= govuk_button_link_to "Cancel", merge_request_path(@merge_request), secondary: true %> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
@ -0,0 +1,28 @@
|
||||
require "rails_helper" |
||||
|
||||
RSpec.describe MergeRequest, type: :request do |
||||
let(:user) { create(:user, :data_coordinator) } |
||||
let(:organisation) { user.organisation } |
||||
let(:merge_request) { create(:merge_request) } |
||||
let(:support_user) { create(:user, :support, organisation:) } |
||||
let(:page) { Capybara::Node::Simple.new(response.body) } |
||||
|
||||
before do |
||||
allow(support_user).to receive(:need_two_factor_authentication?).and_return(false) |
||||
sign_in support_user |
||||
end |
||||
|
||||
context "when deleting a merge request" do |
||||
it "discards the merge request" do |
||||
delete delete_merge_request_path(merge_request) |
||||
expect(merge_request.reload.discarded_at).not_to be_nil |
||||
end |
||||
|
||||
it "redirects to the merge request list" do |
||||
delete delete_merge_request_path(merge_request) |
||||
expect(response).to redirect_to(organisations_path(anchor: "merge-requests")) |
||||
follow_redirect! |
||||
expect(page).to have_content("Merge requests") |
||||
end |
||||
end |
||||
end |
||||
Loading…
Reference in new issue