Project

General

Profile

1
package eu.dnetlib.soap.cxf;
2

    
3
import static org.junit.Assert.assertTrue;
4
import static org.mockito.Mockito.when;
5

    
6
import java.util.HashMap;
7

    
8
import javax.xml.namespace.QName;
9
import javax.xml.ws.EndpointReference;
10

    
11
import org.apache.cxf.endpoint.Endpoint;
12
import org.apache.cxf.service.Service;
13
import org.apache.cxf.service.model.EndpointInfo;
14
import org.junit.Before;
15
import org.junit.Test;
16
import org.junit.runner.RunWith;
17
import org.mockito.Mock;
18
import org.mockito.junit.MockitoJUnitRunner;
19

    
20
/**
21
 * test the CxfEndpointReferenceBuilder.
22
 *
23
 * @author marko
24
 *
25
 */
26
@RunWith(MockitoJUnitRunner.class)
27
public class CxfEndpointReferenceBuilderTest {
28

    
29
	/**
30
	 * service mock.
31
	 */
32
	@Mock
33
	private Service service;
34

    
35
	/**
36
	 * endpoint info mock.
37
	 */
38
	@Mock
39
	private EndpointInfo endpointInfo;
40

    
41
	/**
42
	 * endpoint mock.
43
	 */
44
	@Mock
45
	private Endpoint endpoint;
46

    
47
	/**
48
	 * object under test.
49
	 */
50
	private CxfEndpointReferenceBuilder builder;
51

    
52
	/**
53
	 * initialize object under test and prepare a commmon endpoint mock.
54
	 */
55
	@Before
56
	public void setUp() {
57
		builder = new CxfEndpointReferenceBuilder();
58
		when(service.getName()).thenReturn(new QName("http://my.test", "TestService"));
59

    
60
		when(endpoint.getEndpointInfo()).thenReturn(endpointInfo);
61
		when(endpoint.getService()).thenReturn(service);
62
		when(endpointInfo.getAddress()).thenReturn("http://localhost/something");
63
		when(endpointInfo.getName()).thenReturn(new QName("http://my.test", "TestServiceEndpoint"));
64
	}
65

    
66
	/**
67
	 * test.
68
	 */
69
	@Test
70
	public void testGetEndpointReference() {
71

    
72
		final EndpointReference epr = builder.getEndpointReference(endpoint);
73
		assertTrue("check serialization", epr.toString().contains("TestServiceEndpoint"));
74
		assertTrue("check serialization", epr.toString().contains("http://localhost/something"));
75
		assertTrue("check serialization", epr.toString().contains("http://my.test"));
76

    
77
	}
78

    
79
	/**
80
	 * test method.
81
	 */
82
	@Test
83
	public void testGetEndpointReferenceMetadata() {
84
		final HashMap<String, Object> defaultMetadata = new HashMap<String, Object>();
85
		defaultMetadata.put("{http://someuri}somename", "somevalue");
86
		builder.setDefaultMetadata(defaultMetadata);
87

    
88
		final EndpointReference epr = builder.getEndpointReference(endpoint);
89
		
90
		assertTrue("check serialization", epr.toString().contains("somename xmlns=\"http://someuri\""));
91
		assertTrue("check serialization", epr.toString().contains("xmlns=\"http://someuri\""));
92
		assertTrue("check serialization", epr.toString().contains("somevalue"));
93
	}
94

    
95
	protected Service getService() {
96
		return service;
97
	}
98

    
99
	protected void setService(final Service service) {
100
		this.service = service;
101
	}
102

    
103
	protected EndpointInfo getEndpointInfo() {
104
		return endpointInfo;
105
	}
106

    
107
	protected void setEndpointInfo(final EndpointInfo endpointInfo) {
108
		this.endpointInfo = endpointInfo;
109
	}
110

    
111
	protected Endpoint getEndpoint() {
112
		return endpoint;
113
	}
114

    
115
	protected void setEndpoint(final Endpoint endpoint) {
116
		this.endpoint = endpoint;
117
	}
118

    
119
	protected CxfEndpointReferenceBuilder getBuilder() {
120
		return builder;
121
	}
122

    
123
	protected void setBuilder(final CxfEndpointReferenceBuilder builder) {
124
		this.builder = builder;
125
	}
126
}
(1-1/2)