package org.fastcatsearch.ir.config; import static org.junit.Assert.assertEquals; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.List; import javax.xml.bind.JAXBException; import org.fastcatsearch.ir.config.CollectionsConfig.Collection; import org.fastcatsearch.util.JAXBConfigs; import org.junit.Test; public class CollectionsConfigTest { String collectionsConfigXml = "<collections>\n" + " <collection active=\"false\">sample</collection>\n" + " <collection active=\"true\">sample2</collection>\n" + "</collections>"; @Test public void testRead() throws IOException, JAXBException { InputStream is = new ByteArrayInputStream(collectionsConfigXml.getBytes()); CollectionsConfig collectionsConfig = JAXBConfigs.readConfig(is, CollectionsConfig.class); List<Collection> collectionList = collectionsConfig.getCollectionList(); Collection collection = collectionList.get(0); assertEquals("sample", collection.getId()); // assertEquals(false, collection.isActive()); collection = collectionList.get(1); assertEquals("sample2", collection.getId()); // assertEquals(true, collection.isActive()); } @Test public void testWrite() throws JAXBException { CollectionsConfig collectionsConfig = new CollectionsConfig(); collectionsConfig.addCollection("test"); collectionsConfig.addCollection("sample"); collectionsConfig.addCollection("sample2"); ByteArrayOutputStream os = new ByteArrayOutputStream(); JAXBConfigs.writeRawConfig(os, collectionsConfig, CollectionsConfig.class); System.out.println(os.toString()); } }