@@ -43,8 +43,8 @@ class ControllerDouble < BaseControllerDouble
43
43
end
44
44
45
45
context "when no users are logged in" do
46
- it "#authenticate! redirects to root_url" do
47
- allow ( controller ) . to receive ( :request ) . and_return ( double ( format : nil , fullpath : nil ) )
46
+ it "#authenticate! redirects to root_url for format html " do
47
+ allow ( controller ) . to receive ( :request ) . and_return ( double ( format : :html , fullpath : nil ) )
48
48
allow ( controller ) . to receive ( :redirect_to )
49
49
50
50
controller . authenticate_user!
@@ -56,6 +56,28 @@ class ControllerDouble < BaseControllerDouble
56
56
expect ( controller . user_signed_in? ) . to be_falsey
57
57
end
58
58
59
+ it "#authenticate! doesn't redirect for format json" do
60
+ allow ( controller ) . to receive ( :request ) . and_return ( double ( format : :json , fullpath : nil ) )
61
+ allow ( controller ) . to receive ( :redirect_to )
62
+ allow ( controller ) . to receive ( :render )
63
+
64
+ controller . authenticate_user!
65
+
66
+ expect ( controller ) . not_to have_received ( :redirect_to )
67
+ expect ( controller ) . to have_received ( :render )
68
+ end
69
+
70
+ it "#authenticate! doesn't redirect for format js" do
71
+ allow ( controller ) . to receive ( :request ) . and_return ( double ( format : :js , fullpath : nil ) )
72
+ allow ( controller ) . to receive ( :redirect_to )
73
+ allow ( controller ) . to receive ( :head )
74
+
75
+ controller . authenticate_user!
76
+
77
+ expect ( controller ) . not_to have_received ( :redirect_to )
78
+ expect ( controller ) . to have_received ( :head ) . with ( :unauthorized )
79
+ end
80
+
59
81
end
60
82
61
83
context "when a user is logged in" do
0 commit comments