summaryrefslogtreecommitdiff
path: root/qpid/java/systests
diff options
context:
space:
mode:
authorAlex Rudyy <orudyy@apache.org>2013-04-25 15:35:25 +0000
committerAlex Rudyy <orudyy@apache.org>2013-04-25 15:35:25 +0000
commitef33e61297ec7ea22d8c283e45d4f6d90f417f64 (patch)
treea21cd4a39cfcab3af76cbbb817810e9d440afc07 /qpid/java/systests
parent874b973366824fba1ae502b10c9a5b66c11e4779 (diff)
downloadqpid-python-ef33e61297ec7ea22d8c283e45d4f6d90f417f64.tar.gz
QPID-4596: Call AuthenticationManager#onCreate() only when authentication provider is created
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1475825 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/systests')
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/AuthenticationProviderRestTest.java46
1 files changed, 46 insertions, 0 deletions
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/AuthenticationProviderRestTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/AuthenticationProviderRestTest.java
index 09408572d7..97c75d8d80 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/AuthenticationProviderRestTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/systest/rest/AuthenticationProviderRestTest.java
@@ -169,6 +169,52 @@ public class AuthenticationProviderRestTest extends QpidRestTestCase
assertEquals("Unexpected number of providers", 0, providerDetails.size());
}
+ public void testCreateAndDeletePasswordAuthenticationProviderWithNonExistingFile() throws Exception
+ {
+ stopBroker();
+ getBrokerConfiguration().setSaved(false);
+ getBrokerConfiguration().removeObjectConfiguration(TestBrokerConfiguration.ENTRY_NAME_AUTHENTICATION_PROVIDER);
+ getBrokerConfiguration().setObjectAttribute(TestBrokerConfiguration.ENTRY_NAME_AMQP_PORT, Port.AUTHENTICATION_PROVIDER, ANONYMOUS_AUTHENTICATION_PROVIDER);
+ getBrokerConfiguration().setObjectAttribute(TestBrokerConfiguration.ENTRY_NAME_HTTP_PORT, Port.AUTHENTICATION_PROVIDER, ANONYMOUS_AUTHENTICATION_PROVIDER);
+
+ startBroker();
+
+ File file = new File(TMP_FOLDER + File.separator + getTestName());
+ if (file.exists())
+ {
+ file.delete();
+ }
+ assertFalse("File " + file.getAbsolutePath() + " should not exist", file.exists());
+
+ // create provider
+ String providerName = "test-provider";
+ Map<String, Object> attributes = new HashMap<String, Object>();
+ attributes.put(AuthenticationProvider.NAME, providerName);
+ attributes.put(AuthenticationProvider.TYPE, PlainPasswordFileAuthenticationManagerFactory.PROVIDER_TYPE);
+ attributes.put(PlainPasswordFileAuthenticationManagerFactory.ATTRIBUTE_PATH, file.getAbsolutePath());
+
+ int responseCode = getRestTestHelper().submitRequest("/rest/authenticationprovider/" + providerName, "PUT", attributes);
+ assertEquals("Password provider was not created", 201, responseCode);
+
+
+ Map<String, Object> providerDetails = getRestTestHelper().getJsonAsSingletonList("/rest/authenticationprovider/" + providerName);
+ assertNotNull("Providers details cannot be null", providerDetails);
+ assertEquals("Unexpected name", providerName, providerDetails.get(AuthenticationProvider.NAME));
+ assertEquals("Unexpected type", PlainPasswordFileAuthenticationManagerFactory.PROVIDER_TYPE, providerDetails.get(AuthenticationProvider.TYPE));
+ assertEquals("Unexpected path", file.getAbsolutePath(), providerDetails.get(PlainPasswordFileAuthenticationManagerFactory.ATTRIBUTE_PATH));
+
+ assertTrue("User file should be created", file.exists());
+
+ responseCode = getRestTestHelper().submitRequest("/rest/authenticationprovider/" + providerName , "DELETE", null);
+ assertEquals("Unexpected response code for provider deletion", 200, responseCode);
+
+ List<Map<String, Object>> providers = getRestTestHelper().getJsonAsList("/rest/authenticationprovider/" + providerName);
+ assertNotNull("Providers details cannot be null", providers);
+ assertEquals("Unexpected number of providers", 0, providers.size());
+
+ assertFalse("File " + file.getAbsolutePath() + " should be deleted", file.exists());
+ }
+
private void assertProvider(boolean managesPrincipals, String type, Map<String, Object> provider)
{
Asserts.assertAttributesPresent(provider, AuthenticationProvider.AVAILABLE_ATTRIBUTES,