7 changed files with 85 additions and 8 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