1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.atlassian.jira.rest.client.test.matchers;
18
19 import com.atlassian.jira.rest.client.api.domain.BasicIssue;
20 import com.google.common.collect.Lists;
21 import org.hamcrest.FeatureMatcher;
22 import org.hamcrest.Matcher;
23 import org.hamcrest.Matchers;
24 import org.hamcrest.collection.IsIterableContainingInAnyOrder;
25
26 import java.util.Collection;
27
28 public class IssueMatchers {
29 public static Matcher<? super BasicIssue> withIssueKey(String issueKey) {
30 return new FeatureMatcher<BasicIssue, String>(Matchers.is(issueKey), "issue with key that", "key") {
31
32 @Override
33 protected String featureValueOf(BasicIssue basicIssue) {
34 return basicIssue.getKey();
35 }
36 };
37 }
38
39 public static Matcher<Iterable<? extends BasicIssue>> issuesWithKeys(String... keys) {
40 final Collection<Matcher<? super BasicIssue>> matchers = Lists.newArrayListWithCapacity(keys.length);
41 for (String key : keys) {
42 matchers.add(withIssueKey(key));
43 }
44 return IsIterableContainingInAnyOrder.containsInAnyOrder(matchers);
45 }
46 }