Я хочу проверить, не удалось ли создать новое Post
в моем приложении на форуме Rails.
A Post
не следует создавать при наличии пустого заголовка.
Я пытаюсь это сделать, но это дает мне неверный URI Ошибка:
Error:
PostsNewTest#test_make_a_new_post_with_invalid_title:
URI::InvalidURIError: bad URI(is not URI?): http://www.example.com:80{:params=>{:post=>{:title=>"", :body=>"body", :user_id=>762146111, :category=>"general/announcements"}}}
test/integration/posts_new_test.rb:31:in `block (2 levels) in <class:PostsNewTest>'
test/integration/posts_new_test.rb:30:in `block in <class:PostsNewTest>'
Вот что я пытаюсь, я много играл, чтобы заставить его работать, но я просто не знаю, как это сделать правильно.Я был бы рад, если бы кто-то мог помочь мне понять это правильно:
test 'make a new post with invalid title' do
log_in_as(@user_archer)
get new_post_path category: @valid_category
assert_no_difference 'Post.count' do
post params: { post: {title: @invalid_title,
body: @valid_body,
user_id: @valid_user_id ,
category: @valid_category}}
end
end
Я не понимаю маршрут, куда отправлять сообщения, потому что это не названный маршрут как post_a_Post_path
Редактировать:Дополнительный вопрос относится ли это к Интеграционному тесту или это должно быть частью Модельного теста для Post
?