/* * Copyright 2008-2014 the original author or authors * * Licensed 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.kaleidofoundry.core.config; import java.net.URISyntaxException; import junit.framework.Assert; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.kaleidofoundry.core.context.RuntimeContext; import org.kaleidofoundry.core.store.ResourceException; /** * @author jraduget */ public class OsEnvConfigurationTest extends Assert { private Configuration configuration; @Before public void setup() throws ResourceException { configuration = new OsEnvConfiguration("osEnv", new RuntimeContext<Configuration>(Configuration.class)); configuration.load(); } @After public void cleanup() { } @Test public void isLoaded() { assertNotNull(configuration); assertTrue(configuration.isLoaded()); } @Test public void load() throws ResourceException, URISyntaxException, ResourceException { final Configuration configuration = new OsEnvConfiguration("osEnv", new RuntimeContext<Configuration>(Configuration.class)); assertNotNull(configuration); assertFalse(configuration.isLoaded()); configuration.load(); assertTrue(configuration.isLoaded()); } @Test public void unload() throws ResourceException, URISyntaxException { assertNotNull(configuration); assertTrue(configuration.isLoaded()); configuration.unload(); assertTrue(!configuration.isLoaded()); } @Test public void store() throws ResourceException { assertNotNull(configuration); try { configuration.store(); fail(); } catch (ConfigurationException ce) { assertEquals("config.readonly.store", ce.getCode()); } } @Test public void getProperty() { assertNotNull(configuration); assertNotNull(configuration.getString("PATH")); assertFalse(configuration.getString("PATH").isEmpty()); // test unknown key assertNull(configuration.getProperty("foo")); } }