]> git.openstreetmap.org Git - rails.git/blob - test/controllers/messages/outboxes_controller_test.rb
Merge remote-tracking branch 'upstream/pull/5457'
[rails.git] / test / controllers / messages / outboxes_controller_test.rb
1 require "test_helper"
2
3 module Messages
4   class OutboxesControllerTest < ActionDispatch::IntegrationTest
5     ##
6     # test all routes which lead to this controller
7     def test_routes
8       assert_routing(
9         { :path => "/messages/outbox", :method => :get },
10         { :controller => "messages/outboxes", :action => "show" }
11       )
12     end
13
14     def test_show
15       user = create(:user)
16       message = create(:message, :sender => user)
17
18       session_for(user)
19
20       get messages_outbox_path
21       assert_response :success
22       assert_select ".content-inner > table.messages-table > tbody", :count => 1 do
23         assert_select "tr", :count => 1
24         assert_select "tr#outbox-#{message.id}", :count => 1 do
25           assert_select "a[href='#{user_path message.recipient}']", :text => message.recipient.display_name
26           assert_select "a[href='#{message_path message}']", :text => message.title
27         end
28       end
29     end
30
31     def test_show_requires_login
32       get messages_outbox_path
33       assert_redirected_to login_path(:referer => messages_outbox_path)
34     end
35   end
36 end