9
메소드가 특정 키를 포함하는 해시를 반환하고 해당 키 값이 RSpec을 사용하여 nil이 아닌지 테스트 할 수 있습니까? 이 같은해시에 특정 키가 포함되어 있고 해당 키의 값이 nil이 아님
메소드가 특정 키를 포함하는 해시를 반환하고 해당 키 값이 RSpec을 사용하여 nil이 아닌지 테스트 할 수 있습니까? 이 같은해시에 특정 키가 포함되어 있고 해당 키의 값이 nil이 아님
뭔가 :
test_method.values_at("key1", "key2").should_not include(nil)
내가 쓰는 것 :
describe MyObject do
describe "#my_method" do
subject(:my_method) { MyObject.new.my_method }
it { is_expected.to be_a_kind_of(Hash) }
specify { expect(my_method.keys).to include(:key1, :key2) }
specify { expect(my_method.values).not_to include(nil) }
end
end
당신이, "키 2", "키 1"인용 부호에 키를 사용해야 할 경우가 발생할 수 있습니다. 그렇지 않으면 오류가 발생할 수 있습니다.
해시 값 중 하나가 실제로 'nil'인 경우에는 작동하지 않습니다. 'hash.keys.should = ~ [: key1, : key2]'이 트릭을해야합니다. –