From 57ac671ecb7b4f834e4cb68937500ec943f4eef7 Mon Sep 17 00:00:00 2001 From: Joseph McCarthy Date: Fri, 25 Dec 2015 01:01:24 +0000 Subject: [PATCH] Added PowerMock scoped for Testing and increased the testing for the WorkLogObject --- pom.xml | 15 +++++++ .../net/rcarz/jiraclient/WorklogTest.java | 44 +++++++++++++++++-- 2 files changed, 56 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 58591c3..31d727c 100644 --- a/pom.xml +++ b/pom.xml @@ -71,5 +71,20 @@ test + + org.powermock + powermock-module-junit4 + 1.6.3 + test + + + + org.powermock + powermock-api-mockito + 1.6.3 + test + + + diff --git a/src/test/java/net/rcarz/jiraclient/WorklogTest.java b/src/test/java/net/rcarz/jiraclient/WorklogTest.java index 9b6d77a..4ad2c59 100644 --- a/src/test/java/net/rcarz/jiraclient/WorklogTest.java +++ b/src/test/java/net/rcarz/jiraclient/WorklogTest.java @@ -1,19 +1,54 @@ package net.rcarz.jiraclient; +import net.sf.json.JSONObject; import org.junit.Test; +import org.junit.runner.RunWith; +import org.powermock.api.mockito.PowerMockito; +import org.powermock.core.classloader.annotations.PrepareForTest; +import org.powermock.modules.junit4.PowerMockRunner; import java.text.SimpleDateFormat; import java.util.List; import static junit.framework.Assert.assertEquals; +import static org.mockito.Matchers.anyString; +@RunWith(PowerMockRunner.class) +@PrepareForTest(JSONObject.class) public class WorklogTest { - private String author = "joseph"; - private String started = "2015-08-17T00:00:00.000"; - private String created = "2015-08-20T00:00:00.000"; private SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS"); + @Test(expected = JiraException.class) + public void testJiraExceptionFromRestException() throws Exception { + final RestClient mockRestClient = PowerMockito.mock(RestClient.class); + PowerMockito.when(mockRestClient.get(anyString())).thenThrow(RestException.class); + WorkLog.get(mockRestClient, "issueNumber", "someID"); + } + + @Test(expected = JiraException.class) + public void testJiraExceptionFromNonJSON() throws Exception { + final RestClient mockRestClient = PowerMockito.mock(RestClient.class); + WorkLog.get(mockRestClient,"issueNumber","someID"); + } + + @Test + public void testToString() throws Exception { + final RestClient mockRestClient = PowerMockito.mock(RestClient.class); + final JSONObject mockJSONObject = new JSONObject(); + String dateString = "2015-12-24"; + + mockJSONObject.put("created",dateString); + final JSONObject userJSON = new JSONObject(); + userJSON.put("name","Joseph McCarthy"); + mockJSONObject.put("author", userJSON); + + + + WorkLog workLog = new WorkLog(mockRestClient,mockJSONObject); + assertEquals("Thu Dec 24 00:00:00 GMT 2015 by Joseph McCarthy",workLog.toString()); + } + @Test public void testWorklog() { @@ -24,8 +59,11 @@ public class WorklogTest { assertEquals("comment for worklog 1", workLog.getComment()); assertEquals("6h", workLog.getTimeSpent()); assertEquals("45517", workLog.getId()); + String author = "joseph"; assertEquals(author, workLog.getAuthor().getName()); + String started = "2015-08-17T00:00:00.000"; assertEquals(started, simpleDateFormat.format(workLog.getStarted())); + String created = "2015-08-20T00:00:00.000"; assertEquals(created, simpleDateFormat.format(workLog.getCreatedDate())); assertEquals(21600, workLog.getTimeSpentSeconds()); assertEquals(author, workLog.getUpdateAuthor().getName());