View Javadoc
1   /*
2    * Copyright 2009 the original author or authors.
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  package org.openehealth.ipf.commons.ihe.xds.core.transform.requests.ebxml30;
17  
18  import static org.junit.Assert.*;
19  
20  import org.junit.Before;
21  import org.junit.Test;
22  import org.openehealth.ipf.commons.ihe.xds.core.SampleData;
23  import org.openehealth.ipf.commons.ihe.xds.core.ebxml.EbXMLFactory;
24  import org.openehealth.ipf.commons.ihe.xds.core.ebxml.EbXMLNonconstructiveDocumentSetRequest;
25  import org.openehealth.ipf.commons.ihe.xds.core.ebxml.ebxml30.EbXMLFactory30;
26  import org.openehealth.ipf.commons.ihe.xds.core.requests.DocumentReference;
27  import org.openehealth.ipf.commons.ihe.xds.core.requests.RetrieveDocumentSet;
28  import org.openehealth.ipf.commons.ihe.xds.core.transform.requests.RetrieveDocumentSetRequestTransformer;
29  
30  /**
31   * Tests for {@link RetrieveDocumentSetRequestTransformer}.
32   * @author Jens Riemschneider
33   */
34  public class RetrieveDocumentSetRequestTransformerTest {
35      private RetrieveDocumentSetRequestTransformer transformer;
36      private RetrieveDocumentSet request;
37      
38      @Before
39      public void setUp() {
40          EbXMLFactory factory = new EbXMLFactory30();
41          transformer = new RetrieveDocumentSetRequestTransformer(factory);
42          
43          request = SampleData.createRetrieveDocumentSet();
44      }
45  
46      @Test
47      public void testToEbXML() {
48          EbXMLNonconstructiveDocumentSetRequest ebXML = transformer.toEbXML(request);
49          assertNotNull(ebXML);
50          
51          assertEquals(2, ebXML.getDocuments().size());
52          
53          DocumentReference doc = ebXML.getDocuments().get(0);
54          assertEquals("doc1", doc.getDocumentUniqueId());
55          assertEquals("urn:oid:1.2.3", doc.getHomeCommunityId());
56          assertEquals("repo1", doc.getRepositoryUniqueId());
57   
58          doc = ebXML.getDocuments().get(1);
59          assertEquals("doc2", doc.getDocumentUniqueId());
60          assertEquals("urn:oid:1.2.4", doc.getHomeCommunityId());
61          assertEquals("repo2", doc.getRepositoryUniqueId());
62       }
63      
64       @Test
65       public void testToEbXMLNull() {
66           assertNull(transformer.toEbXML(null));
67       }
68  
69       @Test
70       public void testToEbXMLEmpty() {
71           EbXMLNonconstructiveDocumentSetRequest ebXML = transformer.toEbXML(new RetrieveDocumentSet());
72           assertNotNull(ebXML);
73           assertEquals(0, ebXML.getDocuments().size());
74       }
75       
76       
77       
78       @Test
79       public void testFromEbXML() {
80           EbXMLNonconstructiveDocumentSetRequest ebXML = transformer.toEbXML(request);
81           RetrieveDocumentSet result = transformer.fromEbXML(ebXML);
82           assertEquals(request, result);
83       }
84       
85       @Test
86       public void testFromEbXMLNull() {
87           assertNull(transformer.toEbXML(null));
88       }
89  
90       @Test
91       public void testFromEbXMLEmpty() {
92           EbXMLNonconstructiveDocumentSetRequest ebXML = transformer.toEbXML(new RetrieveDocumentSet());
93           RetrieveDocumentSet result = transformer.fromEbXML(ebXML);
94           assertEquals(new RetrieveDocumentSet(), result);
95       }
96  }