summaryrefslogtreecommitdiff
path: root/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/AbstractDurableConfigurationStoreTestCase.java
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/AbstractDurableConfigurationStoreTestCase.java')
-rw-r--r--qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/AbstractDurableConfigurationStoreTestCase.java40
1 files changed, 39 insertions, 1 deletions
diff --git a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/AbstractDurableConfigurationStoreTestCase.java b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/AbstractDurableConfigurationStoreTestCase.java
index 11c2451118..650b22ff51 100644
--- a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/AbstractDurableConfigurationStoreTestCase.java
+++ b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/AbstractDurableConfigurationStoreTestCase.java
@@ -23,6 +23,7 @@ package org.apache.qpid.server.store;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyMap;
import static org.mockito.Matchers.anyString;
+import static org.mockito.Matchers.argThat;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
@@ -55,6 +56,7 @@ import org.apache.qpid.server.store.Transaction.Record;
import org.apache.qpid.test.utils.QpidTestCase;
import org.apache.qpid.util.FileUtils;
import org.mockito.ArgumentCaptor;
+import org.mockito.ArgumentMatcher;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;
@@ -201,7 +203,31 @@ public abstract class AbstractDurableConfigurationStoreTestCase extends QpidTest
map.put(org.apache.qpid.server.model.Binding.ARGUMENTS,_bindingArgs);
verify(_recoveryHandler).configuredObject(eq(binding.getId()), eq(BINDING),
- eq(map));
+ argThat(new IgnoreCreatedByMatcher(map)));
+ }
+
+ private static class IgnoreCreatedByMatcher extends ArgumentMatcher<Map<String,Object>>
+ {
+ private final Map<String,Object> _matchingMap;
+
+ private IgnoreCreatedByMatcher(final Map<String, Object> matchingMap)
+ {
+ _matchingMap = matchingMap;
+ }
+
+ @Override
+ public boolean matches(final Object argument)
+ {
+ if(argument instanceof Map)
+ {
+ Map<String,Object> arg = new HashMap<String, Object>((Map<String,Object>) argument);
+ arg.remove("createdBy");
+ arg.remove("createdTime");
+ return arg.equals(_matchingMap);
+
+ }
+ return false;
+ }
}
public void testUnbindQueue() throws Exception
@@ -373,6 +399,10 @@ public abstract class AbstractDurableConfigurationStoreTestCase extends QpidTest
when(queue.getVirtualHost()).thenReturn(vh);
final Map<String,Object> attributes = arguments == null ? new LinkedHashMap<String, Object>() : new LinkedHashMap<String, Object>(arguments);
attributes.put(Queue.NAME, queueName);
+ if(alternateExchange != null)
+ {
+ attributes.put(Queue.ALTERNATE_EXCHANGE, alternateExchange);
+ }
if(exclusive)
{
when(queue.getOwner()).thenReturn(queueOwner);
@@ -394,16 +424,24 @@ public abstract class AbstractDurableConfigurationStoreTestCase extends QpidTest
}
});
+ when(queue.getActualAttributes()).thenReturn(attributes);
return queue;
}
private ExchangeImpl createTestExchange()
{
ExchangeImpl exchange = mock(ExchangeImpl.class);
+ Map<String,Object> actualAttributes = new HashMap<String, Object>();
+ actualAttributes.put("id", _exchangeId);
+ actualAttributes.put("name", getName());
+ actualAttributes.put("type", getName() + "Type");
+ actualAttributes.put("lifetimePolicy", LifetimePolicy.DELETE_ON_NO_OUTBOUND_LINKS);
+ when(exchange.getActualAttributes()).thenReturn(actualAttributes);
when(exchange.getName()).thenReturn(getName());
when(exchange.getTypeName()).thenReturn(getName() + "Type");
when(exchange.isAutoDelete()).thenReturn(true);
when(exchange.getId()).thenReturn(_exchangeId);
+
return exchange;
}