package org.osmorc.util;
import org.jetbrains.osgi.jps.util.OrderedProperties;
import org.junit.Test;
import java.io.IOException;
import java.io.StringReader;
import java.util.Enumeration;
import java.util.Iterator;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.junit.Assert.assertThat;
/**
* Test of {@link OrderedProperties}
*/
public class OrderedPropertiesTest {
@Test
public void testRead() throws IOException {
OrderedProperties props = new OrderedProperties();
props.load(new StringReader("Foo: Bar,\\\nnaf\nBar: naf\nBaz=naf\n"));
Enumeration<Object> keys = props.keys();
assertThat((String)keys.nextElement(), equalTo("Foo"));
assertThat((String)keys.nextElement(), equalTo("Bar"));
assertThat((String)keys.nextElement(), equalTo("Baz"));
Enumeration<?> propertyNames = props.propertyNames();
assertThat((String)propertyNames.nextElement(), equalTo("Foo"));
assertThat((String)propertyNames.nextElement(), equalTo("Bar"));
assertThat((String)propertyNames.nextElement(), equalTo("Baz"));
Iterator<String> iterator = props.stringPropertyNames().iterator();
assertThat(iterator.next(), equalTo("Foo"));
assertThat(iterator.next(), equalTo("Bar"));
assertThat(iterator.next(), equalTo("Baz"));
}
@Test
public void testPopulate() throws Exception {
OrderedProperties props = new OrderedProperties();
props.setProperty("key1", "value1");
props.setProperty("key3", "value3");
props.setProperty("key2", "value2");
Iterator<String> iterator = props.stringPropertyNames().iterator();
assertThat(iterator.next(), equalTo("key1"));
assertThat(iterator.next(), equalTo("key3"));
assertThat(iterator.next(), equalTo("key2"));
}
}