summaryrefslogtreecommitdiff
path: root/qpid/java/broker-plugins/management-http/src/test
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2014-07-29 12:58:37 +0000
committerRobert Godfrey <rgodfrey@apache.org>2014-07-29 12:58:37 +0000
commit2db948b9045d5c13919db8db3bfeca3712203a56 (patch)
tree69e9fdc687a976e60d3d3648dd4bf9825dc2ce2d /qpid/java/broker-plugins/management-http/src/test
parent14e411f0f8fbbd10aa8bf08e8926332265e04b1c (diff)
downloadqpid-python-2db948b9045d5c13919db8db3bfeca3712203a56.tar.gz
QPID-5937 : [Java Broker] Add parameters to REST servlet to allow return of actual vs. effective attribute values
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1614333 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker-plugins/management-http/src/test')
-rw-r--r--qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java70
1 files changed, 65 insertions, 5 deletions
diff --git a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
index 82c8d01379..39e8ff6185 100644
--- a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
+++ b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
@@ -19,15 +19,19 @@
*/
package org.apache.qpid.server.management.plugin.servlet.rest;
+import static org.apache.qpid.server.management.plugin.servlet.rest.ConfiguredObjectToMapConverter.STATISTICS_MAP_KEY;
+import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-import static org.apache.qpid.server.management.plugin.servlet.rest.ConfiguredObjectToMapConverter.STATISTICS_MAP_KEY;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import junit.framework.TestCase;
@@ -52,7 +56,8 @@ public class ConfiguredObjectToMapConverterTest extends TestCase
when(_configuredObject.getStatistics()).thenReturn(Collections.singletonMap(statisticName, (Number) statisticValue));
- Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 0);
+ Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 0,
+ false, false);
Map<String, Object> statsAsMap = (Map<String, Object>) resultMap.get(STATISTICS_MAP_KEY);
assertNotNull("Statistics should be part of map", statsAsMap);
assertEquals("Unexpected number of statistics", 1, statsAsMap.size());
@@ -65,7 +70,8 @@ public class ConfiguredObjectToMapConverterTest extends TestCase
final String attributeValue = "value";
configureMockToReturnOneAttribute(_configuredObject, attributeName, attributeValue);
- Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 0);
+ Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 0,
+ false, false);
assertEquals("Unexpected number of attributes", 1, resultMap.size());
assertEquals("Unexpected attribute value", attributeValue, resultMap.get(attributeName));
}
@@ -82,7 +88,8 @@ public class ConfiguredObjectToMapConverterTest extends TestCase
configureMockToReturnOneAttribute(_configuredObject, attributeName, attributeValue);
- Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 0);
+ Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 0,
+ false, false);
assertEquals("Unexpected number of attributes", 1, resultMap.size());
assertEquals("Unexpected attribute value", "attributeConfiguredObjectName", resultMap.get(attributeName));
}
@@ -100,7 +107,8 @@ public class ConfiguredObjectToMapConverterTest extends TestCase
configureMockToReturnOneAttribute(mockChild, childAttributeName, childAttributeValue);
when(_configuredObject.getChildren(TestChild.class)).thenReturn(Arrays.asList(mockChild));
- Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 1);
+ Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 1,
+ false, false);
assertEquals("Unexpected parent map size", 1, resultMap.size());
final List<Map<String, Object>> childList = (List<Map<String, Object>>) resultMap.get("testchilds");
@@ -112,6 +120,58 @@ public class ConfiguredObjectToMapConverterTest extends TestCase
assertEquals("Unexpected child attribute value", childAttributeValue, childMap.get(childAttributeName));
}
+ public void testActuals()
+ {
+ final String childAttributeName = "childattribute";
+ final String childAttributeValue = "childvalue";
+ final String childActualAttributeValue = "${actualvalue}";
+ final Map<String,Object> actualContext = Collections.<String,Object>singletonMap("key","value");
+ final Set<String> inheritedKeys = new HashSet<>(Arrays.asList("key","inheritedkey"));
+
+ Model model = createTestModel();
+
+ TestChild mockChild = mock(TestChild.class);
+ when(mockChild.getModel()).thenReturn(model);
+ when(_configuredObject.getModel()).thenReturn(model);
+ when(_configuredObject.getAttributeNames()).thenReturn(Collections.singletonList(ConfiguredObject.CONTEXT));
+ when(_configuredObject.getContextValue(eq(String.class), eq("key"))).thenReturn("value");
+ when(_configuredObject.getContextValue(eq(String.class),eq("inheritedkey"))).thenReturn("foo");
+ when(_configuredObject.getContextKeys(false)).thenReturn(inheritedKeys);
+ when(_configuredObject.getContext()).thenReturn(actualContext);
+ when(mockChild.getAttributeNames()).thenReturn(Arrays.asList(childAttributeName, ConfiguredObject.CONTEXT));
+ when(mockChild.getAttribute(childAttributeName)).thenReturn(childAttributeValue);
+ when(mockChild.getActualAttributes()).thenReturn(Collections.singletonMap(childAttributeName, childActualAttributeValue));
+ when(_configuredObject.getChildren(TestChild.class)).thenReturn(Arrays.asList(mockChild));
+
+
+ Map<String, Object> resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 1, true,
+ false);
+ assertEquals("Unexpected parent map size", 2, resultMap.size());
+ assertEquals("Incorrect context", resultMap.get(ConfiguredObject.CONTEXT), actualContext);
+ List<Map<String, Object>> childList = (List<Map<String, Object>>) resultMap.get("testchilds");
+ assertEquals("Unexpected number of children", 1, childList.size());
+ Map<String, Object> childMap = childList.get(0);
+ assertEquals("Unexpected child map size", 2, childMap.size());
+ assertNotNull(childMap);
+
+ assertEquals("Unexpected child attribute value", childActualAttributeValue, childMap.get(childAttributeName));
+
+ resultMap = _converter.convertObjectToMap(_configuredObject, ConfiguredObject.class, 1, false, false);
+ assertEquals("Unexpected parent map size", 2, resultMap.size());
+ Map<String, Object> inheritedContext = new HashMap<>();
+ inheritedContext.put("key","value");
+ inheritedContext.put("inheritedkey","foo");
+ assertEquals("Incorrect context", resultMap.get(ConfiguredObject.CONTEXT), inheritedContext);
+ childList = (List<Map<String, Object>>) resultMap.get("testchilds");
+ assertEquals("Unexpected number of children", 1, childList.size());
+ childMap = childList.get(0);
+ assertEquals("Unexpected child map size", 2, childMap.size());
+ assertNotNull(childMap);
+
+ assertEquals("Unexpected child attribute value", childAttributeValue, childMap.get(childAttributeName));
+
+ }
+
private Model createTestModel()
{
Model model = mock(Model.class);