Returns a matcher which matches Iterables that have the same length and
the same elements as
expected, but not necessarily in the same order.
Note that this is worst case O(n^2) runtime and memory usage so it should only be used on small iterables.
Matcher unorderedEquals(Iterable expected) => new _UnorderedEquals(expected);