Closed minhyeok4dev closed 10 years ago
수고하셨습니다~
단위테스트는 코드의 퀄리티를 검증하는 역할도 맡지만, 코드의 명세(Spec)를 대신하는 역할도 맡고 있습니다. 단위테스트가 있으면 코드에 관한 문서나 주석이 없어도 동작 원리를 이해할 수 있죠.
저라면 이렇게 작성할 것 같습니다.
describe "#created_at_sorted_desc" do
it "should descending by created_at" do
now = DateTime.now
message1 = Message.create!(content: "message1", created_at: now - 1.day)
message2 = Message.create!(content: "message2", created_at: now - 3.day)
message3 = Message.create!(content: "message3", created_at: now - 2.day)
expect(Message.created_at_sorted_desc).to eq([message1, message3, message2])
end
end
이 코드는
order(created_at: :desc)
의 의미를 모르는 사람도 쉽게 이해할 수 있습니다.앞으로도 다른 사람들이 이 테스트를 보고 동작 원리를 이해할 수 있도록 노력해보세요. ㅎㅎ 이상입니다. 수고하셨습니다~
윽.. 찔리네요ㅠㅠ 제 테스트 코드 되게 난잡한데 ㅠㅠ
ㅋㅋ 조만간 날 잡고 싹 다 고쳐야죠.(..)
273 중 일부