From 9a6441eb8b76af354562fa1b9a260bc79011a182 Mon Sep 17 00:00:00 2001 From: Alex Rudyy Date: Fri, 17 May 2013 15:26:04 +0000 Subject: QPID-4863: Validate plugin attribute changes and throw UnsupportedOperationException where attribute changes are not supported git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1483861 13f79535-47bb-0310-9956-ffa450edef68 --- .../qpid/systest/rest/HttpManagementRestTest.java | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'java/systests') diff --git a/java/systests/src/main/java/org/apache/qpid/systest/rest/HttpManagementRestTest.java b/java/systests/src/main/java/org/apache/qpid/systest/rest/HttpManagementRestTest.java index 3a0b834cc2..ab38d77b6c 100644 --- a/java/systests/src/main/java/org/apache/qpid/systest/rest/HttpManagementRestTest.java +++ b/java/systests/src/main/java/org/apache/qpid/systest/rest/HttpManagementRestTest.java @@ -66,4 +66,26 @@ public class HttpManagementRestTest extends QpidRestTestCase assertEquals("Unexpected http sasl auth enabled", false, details.get(HttpManagement.HTTP_SASL_AUTHENTICATION_ENABLED)); assertEquals("Unexpected https sasl auth enabled", false, details.get(HttpManagement.HTTPS_SASL_AUTHENTICATION_ENABLED)); } + + public void testUpdateAttributesWithInvalidValues() throws Exception + { + Map invalidAttributes = new HashMap(); + invalidAttributes.put(HttpManagement.HTTPS_BASIC_AUTHENTICATION_ENABLED, 1); + invalidAttributes.put(HttpManagement.HTTPS_SASL_AUTHENTICATION_ENABLED, 2); + invalidAttributes.put(HttpManagement.HTTP_SASL_AUTHENTICATION_ENABLED, 3); + invalidAttributes.put(HttpManagement.TIME_OUT, "undefined"); + + for (Map.Entry invalidAttribute : invalidAttributes.entrySet()) + { + Map attributes = new HashMap(); + attributes.put(invalidAttribute.getKey(), invalidAttribute.getValue()); + int response = getRestTestHelper().submitRequest("/rest/plugin/" + TestBrokerConfiguration.ENTRY_NAME_HTTP_MANAGEMENT, "PUT", attributes); + assertEquals("Update should fail for attribute " + invalidAttribute.getKey() + " with value " + invalidAttribute.getValue() , 409, response); + } + + Map attributes = new HashMap(); + attributes.put(HttpManagement.TIME_OUT, -1l); + int response = getRestTestHelper().submitRequest("/rest/plugin/" + TestBrokerConfiguration.ENTRY_NAME_HTTP_MANAGEMENT, "PUT", attributes); + assertEquals("Update should fail for invalid session timeout", 409, response); + } } -- cgit v1.2.1