1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.atlassian.jira.rest.client.internal.json;
18
19 import com.atlassian.jira.rest.client.domain.Attachment;
20 import org.joda.time.DateTime;
21 import org.joda.time.DateTimeZone;
22 import org.junit.Test;
23
24 import static com.atlassian.jira.rest.client.TestUtil.toUri;
25 import static org.junit.Assert.assertEquals;
26 import static org.junit.Assert.assertNull;
27
28 public class AttachmentJsonParserTest {
29 @Test
30 public void testParse() throws Exception {
31 final AttachmentJsonParser parser = new AttachmentJsonParser();
32 final Attachment attachment = parser.parse(ResourceUtil.getJsonObjectFromResource("/json/attachment/valid.json"));
33 assertEquals(toUri("http://localhost:8090/jira/rest/api/latest/attachment/10031"), attachment.getSelf());
34 assertEquals(toUri("http://localhost:8090/jira/secure/attachment/10031/snipe.png"), attachment.getContentUri());
35 assertEquals("admin", attachment.getAuthor().getName());
36
37 assertEquals(new Attachment(toUri("http://localhost:8090/jira/rest/api/latest/attachment/10031"),
38 "snipe.png", TestConstants.USER_ADMIN, new DateTime(2010, 7, 26, 13, 31, 35, 577, DateTimeZone.forOffsetHours(2)),
39 31020, "image/png", toUri("http://localhost:8090/jira/secure/attachment/10031/snipe.png"),
40 toUri("http://localhost:8090/jira/secure/thumbnail/10031/10031_snipe.png")), attachment);
41 }
42
43 @Test
44 public void testParseWhenAuthorIsAnonymous() throws Exception {
45 final AttachmentJsonParser parser = new AttachmentJsonParser();
46 final Attachment attachment = parser.parse(ResourceUtil.getJsonObjectFromResource("/json/attachment/valid-anonymousAuthor.json"));
47 assertNull(attachment.getAuthor());
48 }
49
50 @Test
51 public void testParseWhenAuthorIsAnonymousInOldRepresentation() throws Exception {
52 final AttachmentJsonParser parser = new AttachmentJsonParser();
53 final Attachment attachment = parser.parse(ResourceUtil.getJsonObjectFromResource("/json/attachment/valid-anonymousAuthor-oldRepresentation.json"));
54 assertNull(attachment.getAuthor());
55 }
56
57 }