2013-03-20 37 views
0

這是我的課廠即lesson.rbFactoryGirl錯誤 「define_method':沒有嘗試過的塊(引發ArgumentError)創建進程內對象」

FactoryGirl.define do 
    factory :lesson do |lesson| 
    lesson.sequence(:title) { |n| "title#{n}" } 
    lesson.sequence(:description) { |n| "description#{n}" } 
    lesson.sequence(:transcript) { |n| "transcript#{n}" } 
    association :course, strategy: :build 
    end 
end 

這裏是我的lesson_spec.rb文件

require 'spec_helper' 

describe Lesson do 
    before { let(:lesson) { FactoryGirl.create(:lesson) } } 
    subject (:lesson) 
    it { should validate_presence_of :title } 
end 

任何幫助?提前致謝!!!

回答

0

我做了我這樣的,它的工作原理

require 'spec_helper' 

describe Lesson do 
    subject { FactoryGirl.create(:lesson) } 
    it { should validate_presence_of :title } 
0

你不需要before塊中的before語句。

before { let(:lesson) { FactoryGirl.create(:lesson) } } 

改變這種

let(:lesson) { FactoryGirl.create(:lesson) 
0

簡單,你不要需要之前讓,要麼你會用beforelet我寧願用三讓,看看this answerexplainin時使用讓當之前使用。

require 'spec_helper' 

describe Lesson do 
    let(:lesson) { FactoryGirl.create(:lesson) } 
    subject (lesson) 
    it { should validate_presence_of :title } 
end 
相關問題