require "test_helper"
class UserDiariesTest < ActionDispatch::IntegrationTest
- fixtures :users
-
# Test the creation of a diary entry, making sure that you are redirected to
# login page when not logged in
def test_showing_create_diary_entry
- get_via_redirect "/diary/new"
+ user = create(:user)
+
+ get "/diary/new"
+ follow_redirect!
+ follow_redirect!
# We should now be at the login page
assert_response :success
- assert_template "user/login"
+ assert_template "sessions/new"
# We can now login
- post "/login", "username" => "test@openstreetmap.org", "password" => "test", :referer => "/diary/new"
+ post "/login", :params => { "username" => user.email, "password" => "test", :referer => "/diary/new" }
assert_response :redirect
- # print @response.body
- # Check that there is some payload alerting the user to the redirect
- # and allowing them to get to the page they are being directed to
- assert_select "html:root" do
- assert_select "body" do
- assert_select "a[href='http://www.example.com/diary/new']"
- end
- end
- # Required due to a bug in the rails testing framework
- # http://markmail.org/message/wnslvi5xv5moqg7g
- @html_document = nil
follow_redirect!
-
assert_response :success
- assert_template "diary_entry/edit"
- # print @response.body
- # print @html_document.to_yaml
+ assert_template "diary_entries/new"
# We will make sure that the form exists here, full
# assert testing of the full form should be done in the
assert_select "h1", "New Diary Entry"
end
assert_select "div#content" do
- assert_select "form[action='/diary/new']" do
+ assert_select "form[action='/diary']" do
assert_select "input[id=diary_entry_title]"
end
end