누군가가 나에게 무엇이 잘못되었는지 설명 할 수 있습니까? RSpec을 배우십시오 - 메시지와 함께 실패한 테스트를 받고 있습니다 - 예상 : "Miller"가 : nil. 두 번째 'before block'은 middle_name을 원래의 @valid_attributes와 병합한다고 생각했습니다. 이렇게하는 올바른 방법은 무엇입니까? 나는 p.middle_name을 지정하기 만하면되지만 RSpec의 개념을 배우려고합니다.RSpec 속성 해시
describe Person do
describe "Validations" do
subject { p }
before { @valid_attributes={first_name: "Joe", last_name: "Sample"} }
...
context "with optional middle name" do
let(:p) { Person.new(@valid_attributes) }
before { @valid_attributes.merge({middle_name: "Miller"}) }
its(:middle_name) { should eq("Miller") }
end
end
end
동의. 당신은 RSpec을 처음 접하는 것이 아니라, Ruby에 대해서도 새로운 것 같습니다. 어떤 방법으로 개체를 변이시키고 어떤 변이를 일으키지 않는지를 알아야합니다. 위에서 언급 한 tokland에서 #merge는 mutate하지 않고 #update는 변경됩니다. – TreyE
사실, 나는 Ruby도 배우고있다. 조언 감사합니다. – basheps