我正在使用 Rspec 进行测试,我想检查一个数组是否包含另一个数组中的某些元素。
elements = ['e1', 'e2']
hash = {'e1' => 5, 'e8' => 8}
it "Include any element from elements" do
hash.should include('e1') || hash.should include('e2')
end
哈希应该包括元素中的任何元素(作为键)。还有更优雅的方式吗?谢谢。
这应该有效:
(elements & hash.keys).should_not be_blank
如果数组包含至少一个存在于 another_array 中的元素,这将通过。
hash.keys
只需返回该哈希的所有键的数组。
大概:
anotherArray = anotherArray | elements
或者干脆
anotherArray |= elements
对于更新:
elements.each{|e| hash[e] = e[1..-1].to_i unless hash.has_key?(e)}