Genellikle dizileri karşılaştırmak ve herhangi bir sırayla aynı öğeleri içerdiklerinden emin olmak istiyorum. RSpec'te bunu yapmanın kısa bir yolu var mı?
Kabul edilemeyen yöntemler şunlardır:
#to_set
Örneğin:
expect(array.to_set).to eq another_array.to_set
veya
array.to_set.should == another_array.to_set
Diziler yinelenen öğeler içerdiğinde bu başarısız olur.
#sort
Örneğin:
expect(array.sort).to eq another_array.sort
veya
array.sort.should == another_array.sort
Diziler öğeleri uygulanmadığında bu başarısız olur #<=>
eq
Eşleştiriciyi kullanın , örn.expect([1, 2]).to_not eq([2, 1])
to_set
vesize
aslında ne istediğinizi yapmaz. Örneğin [a, b, b] [a, a, b] ile eşleşir. Şerefe!