Rspec: "array.should == another_array" but without concern for order Rspec: "array.should == another_array" but without concern for order ruby ruby

Rspec: "array.should == another_array" but without concern for order


Try array.should =~ another_array

The best documentation on this I can find is the code itself, which is here.


Since RSpec 2.11 you can also use match_array.

array.should match_array(another_array)

Which could be more readable in some cases.

[1, 2, 3].should =~ [2, 3, 1]# vs[1, 2, 3].should match_array([2, 3, 1])


I've found =~ to be unpredictable and it has failed for no apparent reason. Past 2.14, you should probably use

expect([1, 2, 3]).to match_array([2, 3, 1])