Я пытаюсь настроить новый проект Rails и столкнуться с некоторыми трудностями с помощью minitest, в частности с помощью программы. Я пытаюсь использовать пользовательские контроллеры для разработки, но в настоящее время я не могу их протестировать. Прямо сейчас я просто пытаюсь начать работу, поэтому мои тесты пустые. Как только я запускаю первый тест, он выдает эту ошибку.Rails 4- Разработать пользовательскую ошибку теста контроллера
Мой файл контроллера ('приложение/контроллеры/пользователи/registrations_controller.rb')
class Users::RegistrationsController < Devise::RegistrationsController
# clear_respond_to
# respond_to :json
end
Мой тестовый файл ('тест/контроллеры/пользователи/registrations_controller_tests.rb')
require 'test_helper'
class Users::RegistrationsControllerTest < ActionController::TestCase
def setup
# @current_user = users(:one)
end
test 'POST #create will register a new user with a valid email and matching passwords' do
# params = {
# user: {
# email: '[email protected]',
# password: 'password',
# password_confirmation: 'password',
# format: :json
# }
# }
# post :create, params
# binding.pry
end
end
Ошибка:
1) Error:
RegistrationsControllerTest#test_POST_#create_will_register_a_new_user_with_a_valid_email_and_matching_passwords:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "controllers" does not exist
LINE 5: WHERE a.attrelid = '"controllers"'::regclass
^
: SELECT a.attname, format_type(a.atttypid, a.atttypmod),
pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
FROM pg_attribute a LEFT JOIN pg_attrdef d
ON a.attrelid = d.adrelid AND a.attnum = d.adnum
WHERE a.attrelid = '"controllers"'::regclass
AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum
Error:
RegistrationsControllerTest#test_POST_#create_will_register_a_new_user_with_a_valid_email_and_matching_passwords:
NoMethodError: undefined method `each' for nil:NilClass
Я попытался сбрасывать и воссоздавать базу данных и иметь r un rake db: test: подготовить, все безрезультатно. Я не знаю, откуда эта ошибка.
Я ищу совет о том, как решить эту проблему, чтобы я мог прогрессировать с моим тестированием. Спасибо.