~ubuntu-branches/ubuntu/raring/libhamcrest1.2-java/raring

« back to all changes in this revision

Viewing changes to hamcrest-unit-test/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrderTest.java

  • Committer: Package Import Robot
  • Author(s): Brian Thomason
  • Date: 2011-12-02 17:55:55 UTC
  • Revision ID: package-import@ubuntu.com-20111202175555-xuj86jbpi8mehr1o
Tags: upstream-1.2
ImportĀ upstreamĀ versionĀ 1.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
package org.hamcrest.collection;
 
2
 
 
3
import static org.hamcrest.collection.IsArrayContainingInAnyOrder.arrayContainingInAnyOrder;
 
4
import static org.hamcrest.core.IsEqual.equalTo;
 
5
 
 
6
import org.hamcrest.AbstractMatcherTest;
 
7
import org.hamcrest.Matcher;
 
8
 
 
9
public class IsArrayContainingInAnyOrderTest extends AbstractMatcherTest {
 
10
 
 
11
    @SuppressWarnings("unchecked")
 
12
    @Override
 
13
    protected Matcher<?> createMatcher() {
 
14
        return arrayContainingInAnyOrder(equalTo(1), equalTo(2));
 
15
    }
 
16
 
 
17
    @SuppressWarnings("unchecked")
 
18
    public void testHasAReadableDescription() {
 
19
        assertDescription("[<1>, <2>] in any order", arrayContainingInAnyOrder(equalTo(1), equalTo(2)));
 
20
        assertDescription("[<1>, <2>] in any order", arrayContainingInAnyOrder(1, 2));
 
21
    }
 
22
    
 
23
    public void testMatchesItemsInAnyOrder() {
 
24
      assertMatches("in order", arrayContainingInAnyOrder(1, 2, 3), new Integer[] {1, 2, 3});
 
25
      assertMatches("out of order", arrayContainingInAnyOrder(1, 2, 3), new Integer[] {3, 2, 1});
 
26
      assertMatches("single", arrayContainingInAnyOrder(1), new Integer[] {1});
 
27
    }
 
28
 
 
29
    @SuppressWarnings("unchecked")
 
30
    public void testAppliesMatchersInAnyOrder() {
 
31
      assertMatches("in order", arrayContainingInAnyOrder(equalTo(1), equalTo(2), equalTo(3)), new Integer[] {1, 2, 3});
 
32
      assertMatches("out of order", arrayContainingInAnyOrder(equalTo(1), equalTo(2), equalTo(3)), new Integer[] {3, 2, 1});
 
33
      assertMatches("single", arrayContainingInAnyOrder(equalTo(1)), new Integer[] {1});
 
34
    }
 
35
 
 
36
    public void testMismatchesItemsInAnyOrder() {
 
37
      Matcher<Integer[]> matcher = arrayContainingInAnyOrder(1, 2, 3);
 
38
      assertMismatchDescription("was null", matcher, null);
 
39
      assertMismatchDescription("No item matches: <1>, <2>, <3> in []", matcher, new Integer[] {});
 
40
      assertMismatchDescription("No item matches: <2>, <3> in [<1>]", matcher, new Integer[] {1});
 
41
      assertMismatchDescription("Not matched: <4>", matcher, new Integer[] {4,3,2,1});
 
42
    }
 
43
}