Skip to content

Commit 7d39e0c

Browse files
author
Ryan Bigg
committed
Section 5.4: Implement deleting tickets feature
1 parent 925e5fe commit 7d39e0c

File tree

3 files changed

+29
-0
lines changed

3 files changed

+29
-0
lines changed

ticketee/app/controllers/tickets_controller.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,13 @@ def update
2828
end
2929
end
3030

31+
def destroy
32+
@ticket.destroy
33+
flash[:success] = "Ticket has been deleted."
34+
35+
redirect_to @project
36+
end
37+
3138
private
3239
def ticket_params
3340
params.require(:ticket).permit(:title, :description)

ticketee/app/views/tickets/show.html.erb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,8 @@
33
<%= link_to "Edit Ticket",
44
[:edit, @project, @ticket],
55
class: "edit" %>
6+
<%= link_to "Delete Ticket", [@project, @ticket], method: :delete,
7+
data: { confirm: "Are you sure you want to delete this ticket?"},
8+
class: "delete" %>
69
<%= simple_format(@ticket.description) %>
710
</div>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
require "rails_helper"
2+
3+
feature "Deleting tickets" do
4+
let!(:project) { FactoryGirl.create(:project) }
5+
let!(:ticket) { FactoryGirl.create(:ticket, project: project) }
6+
7+
before do
8+
visit "/"
9+
click_link project.name
10+
click_link ticket.title
11+
end
12+
13+
scenario "Deleting a ticket" do
14+
click_link "Delete Ticket"
15+
16+
expect(page).to have_content("Ticket has been deleted.")
17+
expect(page.current_url).to eq(project_url(project))
18+
end
19+
end

0 commit comments

Comments
 (0)