Functional tests now work properly, bearing in mind whether a user is logged in or...
[depot.git] / test / functional / line_items_controller_test.rb
1 require 'test_helper'
2
3 class LineItemsControllerTest < ActionController::TestCase
4
5 fixtures :orders, :products, :line_items, :users
6
7 test "should get index" do
8 get :index, {}, { :user_id => users(:dave).id }
9 assert_response :success
10 assert_not_nil assigns(:line_items)
11 end
12
13 test "should get new" do
14 get :new, {}, { :user_id => users(:dave).id }
15 assert_response :success
16 end
17
18 test "should create line_item" do
19 assert_difference('LineItem.count') do
20 post :create, {:line_item => { :order_id => 1, :product_id => 1, :quantity => 5, :total_price => 9.99 }},
21 { :user_id => users(:dave).id }
22 end
23
24 assert_redirected_to line_item_path(assigns(:line_item))
25 end
26
27 test "should show line_item" do
28 get :show, {:id => line_items(:one).id}, { :user_id => users(:dave).id }
29 assert_response :success
30 end
31
32 test "should get edit" do
33 get :edit, {:id => line_items(:one).id}, { :user_id => users(:dave).id }
34 assert_response :success
35 end
36
37 test "should update line_item" do
38 put :update, {:id => line_items(:one).id, :line_item => { } }, { :user_id => users(:dave).id }
39 assert_redirected_to line_item_path(assigns(:line_item))
40 end
41
42 test "should destroy line_item" do
43 assert_difference('LineItem.count', -1) do
44 delete :destroy, {:id => line_items(:one).id}, { :user_id => users(:dave).id }
45 end
46
47 assert_redirected_to line_items_path
48 end
49
50
51
52
53 test "index without user" do
54 get :index
55 assert_redirected_to :controller => "admin", :action => "login"
56 assert_equal "Please log in", flash[:notice]
57 end
58
59 test "new without user" do
60 get :new
61 assert_redirected_to :controller => "admin", :action => "login"
62 assert_equal "Please log in", flash[:notice]
63 end
64
65 test "create line_item without user" do
66 post :create, :line_item => { :order_id => 1, :product_id => 1, :quantity => 5, :total_price => 9.99 }
67 assert_redirected_to :controller => "admin", :action => "login"
68 assert_equal "Please log in", flash[:notice]
69 end
70
71 test "show line_item without user" do
72 get :show, :id => line_items(:one).id
73 assert_redirected_to :controller => "admin", :action => "login"
74 assert_equal "Please log in", flash[:notice]
75 end
76
77 test "get edit without user" do
78 get :edit, :id => line_items(:one).id
79 assert_redirected_to :controller => "admin", :action => "login"
80 assert_equal "Please log in", flash[:notice]
81 end
82
83 test "update line_item without user" do
84 put :update, :id => line_items(:one).id, :line_item => { }
85 assert_redirected_to :controller => "admin", :action => "login"
86 assert_equal "Please log in", flash[:notice]
87 end
88
89 test "destroy line_item without user" do
90 delete :destroy, :id => line_items(:one).id
91 assert_redirected_to :controller => "admin", :action => "login"
92 assert_equal "Please log in", flash[:notice]
93 end
94
95 end