title: RSpec expect to receive method with array but order does not matter
body: <p>Lets say I have method <code>#sum</code> which takes an array and calculates sum of all elements. I'm stubbing it:</p>
  
  <pre><code>  before do
      expect(calculation_service).to receive(:sum?).with([1, 2, 3]) { 6 }
    end
  </code></pre>
  
  <p>unfortunately my test suit passes array in random order. Because of that error is raised:</p>
  
  <pre><code> Failure/Error: subject { do_crazy_stuff! }
     #&lt;InstanceDouble() (CalculationService)&gt; received :sum? with unexpected arguments
       expected: ([1, 2, 3])
            got: ([3, 2, 1])
  </code></pre>
  
  <p>Is it possible to stub method call ignoring order of an array elements? <code>array_including(1, 2, 3)</code> does not ensure about array size, so it probably is not the best solution here</p>