Project

General

Profile

« Previous | Next » 

Revision 45488

using updated mockito version

View differences:

RegistryBlackboardManagerImplTest.java
1 1
package eu.dnetlib.enabling.is.registry; // NOPMD
2 2

  
3
import static org.junit.Assert.assertEquals;
4
import static org.junit.Assert.assertNull;
5
import static org.junit.Assert.fail;
6
import static org.mockito.Matchers.anyString;
7
import static org.mockito.Matchers.argThat;
8
import static org.mockito.Matchers.eq;
9
import static org.mockito.Mockito.verify;
10
import static org.mockito.Mockito.when;
11

  
12 3
import java.io.IOException;
13 4
import java.io.StringWriter;
14

  
15 5
import javax.xml.bind.JAXBException;
16 6
import javax.xml.transform.dom.DOMSource;
17 7
import javax.xml.xpath.XPathConstants;
18 8
import javax.xml.xpath.XPathFactory;
19 9

  
10
import eu.dnetlib.enabling.tools.OpaqueResource;
11
import eu.dnetlib.enabling.tools.StringOpaqueResource;
12
import eu.dnetlib.enabling.tools.blackboard.*;
13
import eu.dnetlib.miscutils.jaxb.JaxbFactory;
14
import eu.dnetlib.rmi.enabling.ISLookUpException;
15
import eu.dnetlib.rmi.enabling.ISLookUpService;
16
import eu.dnetlib.rmi.enabling.ISRegistryException;
17
import eu.dnetlib.rmi.enabling.ISRegistryService;
20 18
import org.apache.commons.io.IOUtils;
21 19
import org.apache.commons.logging.Log;
22 20
import org.apache.commons.logging.LogFactory;
23 21
import org.junit.Before;
24 22
import org.junit.Test;
25 23
import org.junit.runner.RunWith;
26
import org.mockito.ArgumentMatcher;
27 24
import org.mockito.Mock;
28
import org.mockito.runners.MockitoJUnit44Runner;
25
import org.mockito.junit.MockitoJUnitRunner;
29 26
import org.w3c.dom.Element;
30 27
import org.w3c.dom.Node;
31 28

  
32
import eu.dnetlib.enabling.tools.OpaqueResource;
33
import eu.dnetlib.enabling.tools.StringOpaqueResource;
34
import eu.dnetlib.enabling.tools.blackboard.ActionStatus;
35
import eu.dnetlib.enabling.tools.blackboard.BlackboardMessage;
36
import eu.dnetlib.enabling.tools.blackboard.BlackboardMessageImpl;
37
import eu.dnetlib.enabling.tools.blackboard.BlackboardParameter;
38
import eu.dnetlib.enabling.tools.blackboard.BlackboardParameterImpl;
39
import eu.dnetlib.miscutils.jaxb.JaxbFactory;
40
import eu.dnetlib.rmi.enabling.ISLookUpException;
41
import eu.dnetlib.rmi.enabling.ISLookUpService;
42
import eu.dnetlib.rmi.enabling.ISRegistryException;
43
import eu.dnetlib.rmi.enabling.ISRegistryService;
29
import static org.junit.Assert.*;
30
import static org.mockito.Matchers.*;
31
import static org.mockito.Mockito.verify;
32
import static org.mockito.Mockito.when;
44 33

  
45 34
/**
46 35
 * RegistryBlackboardManagerImpl test.
......
48 37
 * @author marko
49 38
 * 
50 39
 */
51
@RunWith(MockitoJUnit44Runner.class)
40
@RunWith(MockitoJUnitRunner.class)
52 41
public class RegistryBlackboardManagerImplTest {
53 42

  
54 43
	/**
......
156 145

  
157 146
		manager.addMessage(PROF_ID, MSG_ID, manager.getMessageFactory().serialize(message));
158 147

  
159
		verify(registryService).updateProfile(eq(PROF_ID), argThat(new ArgumentMatcher<String>() {
148
		verify(registryService).updateProfile(eq(PROF_ID), argThat(argument -> {
149
			log.info("arg: " + argument);
160 150

  
161
			@Override
162
			public boolean matches(final Object argument) {
163
				log.info("arg: " + argument);
151
			try {
152
				final OpaqueResource updatedResource = new StringOpaqueResource(argument);
153
				final Node messageNode = (Node) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/MESSAGE[last()]",
154
						updatedResource.asDom(), XPathConstants.NODE);
164 155

  
165
				try {
166
					final OpaqueResource updatedResource = new StringOpaqueResource((String) argument);
167
					final Node messageNode = (Node) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/MESSAGE[last()]",
168
							updatedResource.asDom(), XPathConstants.NODE);
156
				final BlackboardMessage updatedMessage = manager.getMessageFactory().parse(new DOMSource(messageNode));
169 157

  
170
					final BlackboardMessage updatedMessage = manager.getMessageFactory().parse(new DOMSource(messageNode));
158
				assertEquals("messages should match", message, updatedMessage);
171 159

  
172
					assertEquals("messages should match", message, updatedMessage);
173

  
174
					final Element lastUpdated = (Element) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/LAST_REQUEST",
175
							updatedResource.asDom(), XPathConstants.NODE);
176
					assertEquals("stamp date", manager.getMessageDater().getNumericStamp(), lastUpdated.getAttribute("date"));
177
					assertEquals("stamp message", MSG_ID, lastUpdated.getTextContent());
178
				} catch (Exception e) {
179
					fail("got exception" + e);
180
				}
181
				return true;
160
				final Element lastUpdated = (Element) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/LAST_REQUEST",
161
						updatedResource.asDom(), XPathConstants.NODE);
162
				assertEquals("stamp date", manager.getMessageDater().getNumericStamp(), lastUpdated.getAttribute("date"));
163
				assertEquals("stamp message", MSG_ID, lastUpdated.getTextContent());
164
			} catch (Exception e) {
165
				fail("got exception" + e);
182 166
			}
167
			return true;
183 168
		}), anyString());
184 169
	}
185 170

  
......
202 187

  
203 188
		manager.deleteMessage(PROF_ID, MSG_ID);
204 189

  
205
		verify(registryService).updateProfile(eq(PROF_ID), argThat(new ArgumentMatcher<String>() {
190
		verify(registryService).updateProfile(eq(PROF_ID), argThat(argument -> {
191
			log.debug("arg: " + argument);
206 192

  
207
			@Override
208
			public boolean matches(final Object argument) {
209
				log.debug("arg: " + argument);
193
			try {
194
				final OpaqueResource updatedResource = new StringOpaqueResource(argument);
210 195

  
211
				try {
212
					final OpaqueResource updatedResource = new StringOpaqueResource((String) argument);
196
				final Node messageNode = (Node) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/MESSAGE[last()]",
197
						updatedResource.asDom(), XPathConstants.NODE);
213 198

  
214
					final Node messageNode = (Node) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/MESSAGE[last()]",
215
							updatedResource.asDom(), XPathConstants.NODE);
216

  
217
					assertNull("message should be deleted", messageNode);
218
				} catch (Exception e) {
219
					fail("got exception" + e);
220
				}
221
				return true;
199
				assertNull("message should be deleted", messageNode);
200
			} catch (Exception e) {
201
				fail("got exception" + e);
222 202
			}
203
			return true;
223 204
		}), anyString());
224 205

  
225 206
		// assertNotNull("dummy", manager);
......
262 243

  
263 244
		manager.replyMessage(PROF_ID, manager.getMessageFactory().serialize(message));
264 245

  
265
		verify(registryService).updateProfile(eq(PROF_ID), argThat(new ArgumentMatcher<String>() {
246
		verify(registryService).updateProfile(eq(PROF_ID), argThat(argument -> {
247
			log.info("arg: " + argument);
266 248

  
267
			@Override
268
			public boolean matches(final Object argument) {
269
				log.info("arg: " + argument);
249
			try {
250
				final OpaqueResource updatedResource = new StringOpaqueResource(argument);
270 251

  
271
				try {
272
					final OpaqueResource updatedResource = new StringOpaqueResource((String) argument);
252
				final Node messageNode = (Node) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/MESSAGE[last()]",
253
						updatedResource.asDom(), XPathConstants.NODE);
273 254

  
274
					final Node messageNode = (Node) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/MESSAGE[last()]",
275
							updatedResource.asDom(), XPathConstants.NODE);
255
				final BlackboardMessage updatedMessage = manager.getMessageFactory().parse(new DOMSource(messageNode));
276 256

  
277
					final BlackboardMessage updatedMessage = manager.getMessageFactory().parse(new DOMSource(messageNode));
257
				assertEquals("messages should match", message, updatedMessage);
278 258

  
279
					assertEquals("messages should match", message, updatedMessage);
280

  
281
					final Element lastUpdated = (Element) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/LAST_RESPONSE",
282
							updatedResource.asDom(), XPathConstants.NODE);
283
					assertEquals("stamp date", manager.getMessageDater().getNumericStamp(), lastUpdated.getAttribute("date"));
284
					assertEquals("stamp message", MSG_ID, lastUpdated.getTextContent());
285
				} catch (Exception e) {
286
					fail("got exception" + e);
287
				}
288
				return true;
259
				final Element lastUpdated = (Element) XPathFactory.newInstance().newXPath().evaluate("//BLACKBOARD/LAST_RESPONSE",
260
						updatedResource.asDom(), XPathConstants.NODE);
261
				assertEquals("stamp date", manager.getMessageDater().getNumericStamp(), lastUpdated.getAttribute("date"));
262
				assertEquals("stamp message", MSG_ID, lastUpdated.getTextContent());
263
			} catch (Exception e) {
264
				fail("got exception" + e);
289 265
			}
266
			return true;
290 267
		}), anyString());
291 268
	}
292 269

  

Also available in: Unified diff