1
我有此RSpec的文件來運行:導軌5 + FactoryGirl + Rspec的:輔助方法未定義
class FinancialManager::SalaryRecord::SomeRecord < ApplicationRecord
sanitize = ->(s) { ActionController::Base.helpers.sanitize(s) }
validates :level,
presence: true,
inclusion: {
in: sanitize.call("levels")
},
numericality: { only_integer: true }
end
模型文件上面調用levels
方法:
require 'rails_helper'
RSpec.describe FinancialManager::SalaryRecord::SomeRecordsController,
type: :controller,
financial_manager: true,
salary_record: true,
some_record: true do
context "GET #index" do
it "assigns all record in instance variable" do
some_record =
FactoryGirl.create(
:valid_financial_manager_salary_record_some_record
)
get :index
expect(assigns(:financial_manager_salary_record_some_records))
.to eq([some_record])
end
end
end
,其使用該記錄模型
這是我在helpers
文件夾中定義的幫助方法。當我運行RSpec的文件,我得到這個錯誤:
Failure/Error:
FactoryGirl.create(
:valid_financial_manager_salary_record_some_record
)
NoMethodError:
undefined method `levels' for #<FinancialManager::SalaryRecord::SomeRecord:0x000000077f2db0>
問題是,我怎麼能運行RSpec的測試時使用的輔助方法?我正確使用助手方法嗎?
問候
感謝您發佈您的問題的答案,我一直在努力尋找如何從工廠回調調用助手,這工作。 +1。你應該接受你自己的答案^^ – David