use of com.atlassian.jira.rest.client.api.domain.BasicUser in project camel-spring-boot by apache.
the class WatcherProducerTest method removeWatchers.
@Test
public void removeWatchers() throws InterruptedException {
List<String> watchersToRemove = new ArrayList<>();
watchersToRemove.add("user2");
watchersToRemove.add("user3");
Map<String, Object> headers = new HashMap<>();
headers.put(ISSUE_KEY, backendIssue.getKey());
headers.put(ISSUE_WATCHERS_REMOVE, watchersToRemove);
template.sendBodyAndHeaders(null, headers);
Issue retrievedIssue = issueRestClient.getIssue(backendIssue.getKey()).claim();
assertEquals(backendIssue, retrievedIssue);
assertEquals(retrievedIssue.getWatchers().getNumWatchers(), backendwatchers.size());
Watchers watchers = issueRestClient.getWatchers(retrievedIssue.getWatchers().getSelf()).claim();
for (BasicUser user : watchers.getUsers()) {
assertTrue(backendwatchers.contains(user.getName()));
}
mockResult.expectedMessageCount(1);
mockResult.assertIsSatisfied();
}
use of com.atlassian.jira.rest.client.api.domain.BasicUser in project camel-spring-boot by apache.
the class WatcherProducerTest method contextConfiguration.
@Bean
CamelContextConfiguration contextConfiguration() {
return new CamelContextConfiguration() {
@Override
public void beforeApplicationStart(CamelContext context) {
// get chance to mock camelContext/Registry
jiraRestClientFactory = mock(JiraRestClientFactory.class);
jiraClient = mock(JiraRestClient.class);
issueRestClient = mock(IssueRestClient.class);
lenient().when(jiraRestClientFactory.createWithBasicHttpAuthentication(any(), any(), any())).thenReturn(jiraClient);
lenient().when(jiraClient.getIssueClient()).thenReturn(issueRestClient);
backendwatchers.add("user1");
backendwatchers.add("user2");
backendwatchers.add("user3");
backendwatchers.add("user4");
backendwatchers.add("user5");
URI watchersUri = URI.create(TEST_JIRA_URL + "/rest/api/2/backendIssue/" + KEY + "-11/backendwatchers");
BasicWatchers initialBasicWatchers = new BasicWatchers(watchersUri, true, backendwatchers.size());
backendIssue = createIssue(11L, "Test backendIssue", KEY + "-" + 11, null, null, null, null, null, initialBasicWatchers);
lenient().when(issueRestClient.addWatcher(any(URI.class), anyString())).then(inv -> {
String username = inv.getArgument(1);
backendwatchers.add(username);
BasicWatchers basicWatchers = new BasicWatchers(watchersUri, true, backendwatchers.size());
backendIssue = createIssue(backendIssue.getId(), backendIssue.getSummary(), backendIssue.getKey(), backendIssue.getIssueType(), backendIssue.getDescription(), backendIssue.getPriority(), backendIssue.getAssignee(), null, basicWatchers);
return null;
});
lenient().when(issueRestClient.removeWatcher(any(URI.class), anyString())).then(inv -> {
String username = inv.getArgument(1);
backendwatchers.remove(username);
BasicWatchers basicWatchers = new BasicWatchers(watchersUri, true, backendwatchers.size());
backendIssue = createIssue(backendIssue.getId(), backendIssue.getSummary(), backendIssue.getKey(), backendIssue.getIssueType(), backendIssue.getDescription(), backendIssue.getPriority(), backendIssue.getAssignee(), null, basicWatchers);
return null;
});
lenient().when(issueRestClient.getIssue(anyString())).then(inv -> Promises.promise(backendIssue));
lenient().when(issueRestClient.getWatchers(any(URI.class))).then(inv -> {
Collection<BasicUser> users = new ArrayList<>();
for (String watcher : backendwatchers) {
users.add(new BasicUser(null, watcher, watcher));
}
BasicWatchers basicWatchers = new BasicWatchers(watchersUri, true, users.size());
Watchers watchers = new Watchers(basicWatchers, users);
return Promises.promise(watchers);
});
camelContext.getRegistry().bind(JIRA_REST_CLIENT_FACTORY, jiraRestClientFactory);
}
@Override
public void afterApplicationStart(CamelContext camelContext) {
// do nothing here
}
};
}
use of com.atlassian.jira.rest.client.api.domain.BasicUser in project jira-plugin by jenkinsci.
the class JiraRestService method getComponents.
public List<Component> getComponents(String projectKey) {
final URIBuilder builder = new URIBuilder(uri).setPath(String.format("%s/project/%s/components", baseApiPath, projectKey));
try {
final Content content = buildGetRequest(builder.build()).execute().returnContent();
final List<Map<String, Object>> decoded = objectMapper.readValue(content.asString(), new TypeReference<List<Map<String, Object>>>() {
});
final List<Component> components = new ArrayList<>();
for (final Map<String, Object> decodeComponent : decoded) {
BasicUser lead = null;
if (decodeComponent.containsKey("lead")) {
final Map<String, Object> decodedLead = (Map<String, Object>) decodeComponent.get("lead");
lead = new BasicUser(URI.create((String) decodedLead.get("self")), (String) decodedLead.get("name"), (String) decodedLead.get("displayName"), (String) decodedLead.get("accountId"));
}
final Component component = new Component(URI.create((String) decodeComponent.get("self")), Long.parseLong((String) decodeComponent.get("id")), (String) decodeComponent.get("name"), (String) decodeComponent.get("description"), lead);
components.add(component);
}
return components;
} catch (Exception e) {
LOGGER.log(WARNING, "Jira REST client process workflow action error. cause: " + e.getMessage(), e);
return Collections.emptyList();
}
}
use of com.atlassian.jira.rest.client.api.domain.BasicUser in project camel-spring-boot by apache.
the class WatcherProducerTest method addWatchers.
@Test
public void addWatchers() throws InterruptedException {
List<String> watchersToAdd = new ArrayList<>();
watchersToAdd.add("user1A");
watchersToAdd.add("user1B");
Map<String, Object> headers = new HashMap<>();
headers.put(ISSUE_KEY, backendIssue.getKey());
headers.put(ISSUE_WATCHERS_ADD, watchersToAdd);
template.sendBodyAndHeaders(null, headers);
Issue retrievedIssue = issueRestClient.getIssue(backendIssue.getKey()).claim();
assertEquals(backendIssue, retrievedIssue);
assertEquals(retrievedIssue.getWatchers().getNumWatchers(), backendwatchers.size());
Watchers watchers = issueRestClient.getWatchers(retrievedIssue.getWatchers().getSelf()).claim();
for (BasicUser user : watchers.getUsers()) {
assertTrue(backendwatchers.contains(user.getName()));
}
mockResult.expectedMessageCount(1);
mockResult.assertIsSatisfied();
}
use of com.atlassian.jira.rest.client.api.domain.BasicUser in project camel-spring-boot by apache.
the class WatcherProducerTest method addRemoveWatchers.
@Test
public void addRemoveWatchers() throws InterruptedException {
List<String> watchersToAdd = new ArrayList<>();
watchersToAdd.add("user2A");
watchersToAdd.add("user2B");
List<String> watchersToRemove = new ArrayList<>();
watchersToRemove.add("user4");
watchersToRemove.add("user5");
Map<String, Object> headers = new HashMap<>();
headers.put(ISSUE_KEY, backendIssue.getKey());
headers.put(ISSUE_WATCHERS_ADD, watchersToAdd);
headers.put(ISSUE_WATCHERS_REMOVE, watchersToRemove);
template.sendBodyAndHeaders(null, headers);
Issue retrievedIssue = issueRestClient.getIssue(backendIssue.getKey()).claim();
assertEquals(backendIssue, retrievedIssue);
assertEquals(retrievedIssue.getWatchers().getNumWatchers(), backendwatchers.size());
Watchers watchers = issueRestClient.getWatchers(retrievedIssue.getWatchers().getSelf()).claim();
for (BasicUser user : watchers.getUsers()) {
assertTrue(backendwatchers.contains(user.getName()));
}
mockResult.expectedMessageCount(1);
mockResult.assertIsSatisfied();
}
Aggregations