+ public static Matcher<SimpleFieldSet> matches(final SimpleFieldSet fieldSetToMatch) {
+ return new TypeSafeMatcher<SimpleFieldSet>() {
+ @Override
+ protected boolean matchesSafely(SimpleFieldSet fieldSet) {
+ if (size(fieldSet.keyIterator()) != size(fieldSetToMatch.keyIterator())) {
+ return false;
+ }
+ for (Iterator<String> keys = fieldSetToMatch.keyIterator(); keys.hasNext(); ) {
+ String key = keys.next();
+ if (!equal(fieldSet.get(key), fieldSetToMatch.get(key))) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public void describeTo(Description description) {
+ description.appendText("is ").appendValue(fieldSetToMatch);
+ }
+ };
+ }
+