2
* Licensed to the Apache Software Foundation (ASF) under one or more
3
* contributor license agreements. See the NOTICE file distributed with
4
* this work for additional information regarding copyright ownership.
5
* The ASF licenses this file to You under the Apache License, Version 2.0
6
* (the "License"); you may not use this file except in compliance with
7
* the License. You may obtain a copy of the License at
9
* http://www.apache.org/licenses/LICENSE-2.0
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
18
package org.apache.commons.configuration;
20
import static org.junit.Assert.assertEquals;
21
import static org.junit.Assert.assertFalse;
22
import static org.junit.Assert.assertTrue;
26
import org.junit.Test;
29
* @author Emmanuel Bourg
30
* @version $Id: TestXMLPropertiesConfiguration.java 1225341 2011-12-28 21:18:28Z oheger $
32
public class TestXMLPropertiesConfiguration
35
public void testLoad() throws Exception
37
XMLPropertiesConfiguration conf = new XMLPropertiesConfiguration("test.properties.xml");
39
assertEquals("header", "Description of the property list", conf.getHeader());
41
assertFalse("The configuration is empty", conf.isEmpty());
42
assertEquals("'key1' property", "value1", conf.getProperty("key1"));
43
assertEquals("'key2' property", "value2", conf.getProperty("key2"));
44
assertEquals("'key3' property", "value3", conf.getProperty("key3"));
48
public void testSave() throws Exception
50
// load the configuration
51
XMLPropertiesConfiguration conf = new XMLPropertiesConfiguration("test.properties.xml");
53
// update the configuration
54
conf.addProperty("key4", "value4");
55
conf.clearProperty("key2");
56
conf.setHeader("Description of the new property list");
58
// save the configuration
59
File saveFile = new File("target/test2.properties.xml");
60
if (saveFile.exists())
62
assertTrue(saveFile.delete());
66
// reload the configuration
67
XMLPropertiesConfiguration conf2 = new XMLPropertiesConfiguration(saveFile);
69
// test the configuration
70
assertEquals("header", "Description of the new property list", conf2.getHeader());
72
assertFalse("The configuration is empty", conf2.isEmpty());
73
assertEquals("'key1' property", "value1", conf2.getProperty("key1"));
74
assertEquals("'key3' property", "value3", conf2.getProperty("key3"));
75
assertEquals("'key4' property", "value4", conf2.getProperty("key4"));