1   /*
2    * Copyright (C) 2011 Atlassian
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *     http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  package com.atlassian.jira.rest.client.internal.json;
18  
19  import com.atlassian.jira.rest.client.domain.TimeTracking;
20  import org.junit.Test;
21  
22  import static org.junit.Assert.assertEquals;
23  
24  public class TimeTrackingJsonParserTest {
25  	@Test
26  	public void testParse() throws Exception {
27  		final TimeTrackingJsonParser parser = new TimeTrackingJsonParser();
28  		final TimeTracking timeTracking = parser.parse(ResourceUtil.getJsonObjectFromResource("/json/timeTracking/valid.json").getJSONObject("value"));
29  		assertEquals(new TimeTracking(1500, 70, 190), timeTracking);
30  	}
31  
32  	@Test
33  	public void testParseNoEstimation() throws Exception {
34  		final TimeTrackingJsonParser parser = new TimeTrackingJsonParser();
35  		final TimeTracking timeTracking = parser.parse(ResourceUtil.getJsonObjectFromResource("/json/timeTracking/valid-no-estimation.json").getJSONObject("value"));
36  		assertEquals(new TimeTracking(null, 170, 9), timeTracking);
37  	}
38  
39  	@Test
40  	public void testParseJustLoggedTime() throws Exception {
41  		final TimeTrackingJsonParser parser = new TimeTrackingJsonParser();
42  		final TimeTracking timeTracking = parser.parse(ResourceUtil.getJsonObjectFromResource("/json/timeTracking/valid-just-timespent.json").getJSONObject("value"));
43  		assertEquals(new TimeTracking(null, null, 840), timeTracking);
44  	}
45  
46  }