Я, видимо, добавил новое поле в модель моего клиента, известную как ct_ratio, перед запуском тестов. Когда я теперь запускать тесты на мой счет-фактура спецификации, они не с "Нет ошибки метода, ct_ratio ="Rspec нет Назначение ошибки метода
Customer.rb
class Customer < ActiveRecord::Base
attr_accessible :billing_address, :customer_currency, :email, :first_name, :last_name, :mobile, :name, :payment_terms, :phase_type, :readings_attributes, :pays_vat, :ct_ratio
before_validation do
self.ct_ratio ||= 1
end
end
Invoice_spec
describe Invoice do
context 'create_item_from_readings' do
before :each do
@customer = FactoryGirl.create :customer
@reading1 = @customer.readings.create! reading1: 100, date_of_reading: 30.days.ago
@reading2 = @customer.readings.create! reading1: 200, date_of_reading: 20.days.ago
@reading3 = @customer.readings.create! reading1: 500, date_of_reading: 10.days.ago
@customer.stub(:unit_cost).and_return(100)
end
it "should create an invoice item for all reading" do
invoice = Invoice.new customer: @customer, invoice_date: 15.days.ago, due_date: Date.today
item = invoice.create_item_from_readings
item.rate.should == 100
item.amount.should == 100 * 100
item.description.should == "Electricity used from #{@reading1.date_of_reading.strftime('%d/%m/%Y')} to #{@reading2.date_of_reading.strftime('%d/%m/%Y')} - 100 units"
end
Я добавил ct_ratio в Factory Girl
require 'factory_girl'
FactoryGirl.define do
factory :customer do
name 'Test Test'
first_name "Test"
last_name "Test"
mobile "00000000"
billing_address "Kampala"
payment_terms "Immediate"
phase_type "Single Phase"
customer_currency "UGX"
pays_vat false
email "[email protected]"
ct_ratio 1
end
factory :reading do |f|
f.reading1 100
f.reading2 150
f.reading3 200
f.date_of_reading 30.days.ago
end
end
Вы "* видимо * добавили новое поле"? Вы добавили его или не добавили? –
@shioyama Я добавил новое поле ct_ratio и добавил его на заводскую девушку – zurik