title: How to assert the contents of an array, indifferent of the ordering
body: <p>I have a minitest spec:</p>
  
  <pre><code>it "fetches a list of all databases" do
    get "/v1/databases"
    json = JSON.parse(response.body)
    json.length.must_equal           Database.count
    json.map{|d| d["id"]}.must_equal Database.all.pluck(:id)
  end
  </code></pre>
  
  <p>This, however, fails:</p>
  
  <pre><code>Expected: [610897332, 251689721]
    Actual: [251689721, 610897332]
  </code></pre>
  
  <p>I could order them both, but that adds clutter:</p>
  
  <pre><code>json.map{|d| d["id"]}.sort.must_equal Database.all.pluck(:id).sort
  </code></pre>
  
  <p>As it is, the <code>map{}</code> is already somewhat irrelevant to the test and adding clutter, I'd prefer to not add even more.</p>
  
  <p>Is there an assertion or helper to test if all items in <code>enumerator1</code> are all in <code>enumerator2</code>?</p>