diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/java/org/wso2/carbon/device/mgt/core/app/mgt/AppManagementConfigurationManagerTest.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/java/org/wso2/carbon/device/mgt/core/app/mgt/AppManagementConfigurationManagerTest.java
new file mode 100644
index 00000000000..5ff931837f7
--- /dev/null
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/java/org/wso2/carbon/device/mgt/core/app/mgt/AppManagementConfigurationManagerTest.java
@@ -0,0 +1,96 @@
+/*
+ * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
+ *
+ * WSO2 Inc. licenses this file to you under the Apache License,
+ * Version 2.0 (the "License"); you may not use this file except
+ * in compliance with the License.
+ * you may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.wso2.carbon.device.mgt.core.app.mgt;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.testng.Assert;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfig;
+import org.xml.sax.SAXException;
+import org.xml.sax.SAXParseException;
+
+import javax.xml.XMLConstants;
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Unmarshaller;
+import javax.xml.validation.Schema;
+import javax.xml.validation.SchemaFactory;
+import java.io.File;
+
+public class AppManagementConfigurationManagerTest {
+
+ private static final Log log = LogFactory.getLog(AppManagementConfigurationManagerTest.class);
+ private static final String MALFORMED_TEST_CONFIG_LOCATION_NO_ENABLED =
+ "./src/test/resources/config/malformed-app-management-config-no-enabled.xml";
+ private static final String MALFORMED_TEST_CONFIG_LOCATION_NO_CLIENT_KEY =
+ "./src/test/resources/config/malformed-app-management-config-no-client-key-secret.xml";
+ private static final String TEST_CONFIG_SCHEMA_LOCATION =
+ "./src/test/resources/config/schema/app-mgt-config-schema.xsd";
+
+ private Schema schema;
+
+ @BeforeClass
+ private void initSchema() {
+ File deviceManagementSchemaConfig = new File(AppManagementConfigurationManagerTest.TEST_CONFIG_SCHEMA_LOCATION);
+ SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
+ try {
+ schema = factory.newSchema(deviceManagementSchemaConfig);
+ } catch (SAXException e) {
+ Assert.fail("Invalid schema found", e);
+ }
+ }
+
+ @Test()
+ public void testMandateEnabledElement() {
+ File malformedConfig =
+ new File(AppManagementConfigurationManagerTest.MALFORMED_TEST_CONFIG_LOCATION_NO_ENABLED);
+ this.validateMalformedConfig(malformedConfig);
+ }
+
+ @Test()
+ public void testMandateClientKeySecretElement() {
+ File malformedConfig =
+ new File(AppManagementConfigurationManagerTest.MALFORMED_TEST_CONFIG_LOCATION_NO_CLIENT_KEY);
+ this.validateMalformedConfig(malformedConfig);
+ }
+
+ private void validateMalformedConfig(File malformedConfig) {
+ try {
+ JAXBContext ctx = JAXBContext.newInstance(AppManagementConfig.class);
+ Unmarshaller um = ctx.createUnmarshaller();
+ um.setSchema(this.getSchema());
+ um.unmarshal(malformedConfig);
+ Assert.assertTrue(false);
+ } catch (JAXBException e) {
+ Throwable linkedException = e.getLinkedException();
+ if (!(linkedException instanceof SAXParseException)) {
+ log.error("Unexpected error occurred while unmarshalling app management config", e);
+ Assert.assertTrue(false);
+ }
+ log.error("JAXB parser occurred while unmarsharlling app management config", e);
+ Assert.assertTrue(true);
+ }
+ }
+
+ private Schema getSchema() {
+ return schema;
+ }
+}
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/malformed-app-management-config-no-client-key-secret.xml b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/malformed-app-management-config-no-client-key-secret.xml
new file mode 100644
index 00000000000..ef7a146cdd1
--- /dev/null
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/malformed-app-management-config-no-client-key-secret.xml
@@ -0,0 +1,23 @@
+
+
+
+
+ true
+ http:/www.google.com
+
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/malformed-app-management-config-no-enabled.xml b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/malformed-app-management-config-no-enabled.xml
new file mode 100644
index 00000000000..2087b378915
--- /dev/null
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/malformed-app-management-config-no-enabled.xml
@@ -0,0 +1,24 @@
+
+
+
+
+ http:/www.google.com
+ ConsumerKey
+ ConsumerSecret
+
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/schema/app-mgt-config-schema.xsd b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/schema/app-mgt-config-schema.xsd
new file mode 100644
index 00000000000..2b0ec374aa8
--- /dev/null
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/config/schema/app-mgt-config-schema.xsd
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/testng.xml b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/testng.xml
index 4622a58873d..4da53d12475 100644
--- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/testng.xml
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/test/resources/testng.xml
@@ -28,6 +28,7 @@
+
diff --git a/components/oauth-extensions/dynamic-client-manager/src/main/java/org/wso2/carbon/identity/oauth/extension/impl/ConfigurationServiceImpl.java b/components/oauth-extensions/dynamic-client-manager/src/main/java/org/wso2/carbon/identity/oauth/extension/impl/ConfigurationServiceImpl.java
index 87f36b6fbf7..840e0ee9357 100644
--- a/components/oauth-extensions/dynamic-client-manager/src/main/java/org/wso2/carbon/identity/oauth/extension/impl/ConfigurationServiceImpl.java
+++ b/components/oauth-extensions/dynamic-client-manager/src/main/java/org/wso2/carbon/identity/oauth/extension/impl/ConfigurationServiceImpl.java
@@ -30,4 +30,4 @@ public class ConfigurationServiceImpl implements ConfigurationService {
return null;
}
-}
+}
\ No newline at end of file