我经常希望比较数组,并确保它们以任何顺序包含相同的元素。在RSpec中是否有一种简洁的方法来做到这一点?
以下是一些不可接受的方法:
# to_set
例如:
expect(array.to_set).to eq another_array.to_set
or
array.to_set.should == another_array.to_set
当数组包含重复项时,此操作将失败。
#排序
例如:
expect(array.sort).to eq another_array.sort
or
array.sort.should == another_array.sort
当数组元素没有实现#<=>时,将失败