summaryrefslogtreecommitdiff
path: root/test/controllers/nodes_controller_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/controllers/nodes_controller_test.rb')
-rw-r--r--test/controllers/nodes_controller_test.rb31
1 files changed, 26 insertions, 5 deletions
diff --git a/test/controllers/nodes_controller_test.rb b/test/controllers/nodes_controller_test.rb
index 7e5a990..6e2ddb3 100644
--- a/test/controllers/nodes_controller_test.rb
+++ b/test/controllers/nodes_controller_test.rb
@@ -427,11 +427,11 @@ class NodesControllerTest < ActionController::TestCase
427 test "show never renders a destroy link for events" do 427 test "show never renders a destroy link for events" do
428 login_as :quentin 428 login_as :quentin
429 node = create_node_with_published_page 429 node = create_node_with_published_page
430 Event.create!(node_id: node.id, start_time: Time.now, end_time: Time.now + 1.hour) 430 event = Event.create!(node_id: node.id, start_time: Time.now, end_time: Time.now + 1.hour)
431 431
432 get :show, params: { id: node.id } 432 get :show, params: { id: node.id }
433 assert_response :success 433 assert_response :success
434 assert_select "form.button_to.destructive", count: 0 434 assert_select "form[action=?]", event_path(event), count: 0
435 end 435 end
436 436
437 test "reverting from nodes#show returns to the show page, not the editor, even if a draft remains" do 437 test "reverting from nodes#show returns to the show page, not the editor, even if a draft remains" do
@@ -479,7 +479,8 @@ class NodesControllerTest < ActionController::TestCase
479 login_as :quentin 479 login_as :quentin
480 get :show, params: { :id => node.id } 480 get :show, params: { :id => node.id }
481 assert_response :success 481 assert_response :success
482 assert_select "form.destructive", :count => 0 482 assert_select "form[action=?]", revert_node_path(node), count: 0
483 assert_select "form[action=?]", trash_node_path(node), count: 1
483 end 484 end
484 485
485 test "drafts includes a never-published node with only a draft" do 486 test "drafts includes a never-published node with only a draft" do
@@ -679,7 +680,7 @@ class NodesControllerTest < ActionController::TestCase
679 680
680 put :trash, params: { :id => node.id } 681 put :trash, params: { :id => node.id }
681 682
682 assert_redirected_to node_path(Node.trash) 683 assert_redirected_to trashed_nodes_path
683 assert node.reload.in_trash? 684 assert node.reload.in_trash?
684 end 685 end
685 686
@@ -722,6 +723,26 @@ class NodesControllerTest < ActionController::TestCase
722 delete :destroy, params: { :id => node.id } 723 delete :destroy, params: { :id => node.id }
723 724
724 assert_not Node.exists?(node.id) 725 assert_not Node.exists?(node.id)
725 assert_redirected_to node_path(Node.trash) 726 assert_redirected_to trashed_nodes_path
727 end
728
729 test "trash lists trashed subtree roots" do
730 login_as :quentin
731 node = Node.root.children.create!(:slug => "listed_in_trash")
732 node.trash!(users(:quentin))
733
734 get :trashed
735 assert_response :success
736 assert_select "a[href=?]", node_path(node)
737 end
738
739 test "trashed rows carry provenance and a delete for childless roots" do
740 login_as :quentin
741 node = Node.root.children.create!(:slug => "provenance_test")
742 node.trash!(users(:quentin))
743
744 get :trashed
745 assert_select "td", /quentin/
746 assert_select "form[action=?]", node_path(node), count: 1
726 end 747 end
727end 748end