X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fconfig%2Fconfig-persister-directory-xml-adapter%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fpersist%2Fstorage%2Fdirectory%2Fxml%2FDirectoryStorageAdapterTest.java;h=da442ef4b2fb669b5b1bd0e9a389616cc6755b97;hp=825eb946c8ec8be817caf0c73470528531e15650;hb=7aa1b58c1ee398a6c15baf832ecfe6ac313d1f66;hpb=d71e327e51db32e967f7ebcb186e148f37f28117 diff --git a/opendaylight/config/config-persister-directory-xml-adapter/src/test/java/org/opendaylight/controller/config/persist/storage/directory/xml/DirectoryStorageAdapterTest.java b/opendaylight/config/config-persister-directory-xml-adapter/src/test/java/org/opendaylight/controller/config/persist/storage/directory/xml/DirectoryStorageAdapterTest.java index 825eb946c8..da442ef4b2 100644 --- a/opendaylight/config/config-persister-directory-xml-adapter/src/test/java/org/opendaylight/controller/config/persist/storage/directory/xml/DirectoryStorageAdapterTest.java +++ b/opendaylight/config/config-persister-directory-xml-adapter/src/test/java/org/opendaylight/controller/config/persist/storage/directory/xml/DirectoryStorageAdapterTest.java @@ -12,8 +12,12 @@ import java.io.File; import java.util.Collections; import java.util.List; import java.util.SortedSet; + +import com.google.common.base.Optional; import org.junit.Test; import org.opendaylight.controller.config.persist.api.ConfigSnapshotHolder; +import org.opendaylight.controller.config.persist.api.Persister; +import org.opendaylight.controller.config.persist.test.PropertiesProviderTest; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import static org.junit.Assert.assertEquals; @@ -21,14 +25,30 @@ import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; public class DirectoryStorageAdapterTest { - XmlDirectoryPersister tested; + Persister tested; Logger logger = LoggerFactory.getLogger(DirectoryStorageAdapterTest.class.toString()); + private Persister instantiatePersisterFromAdapter(File file, Optional extensions){ + PropertiesProviderTest pp = new PropertiesProviderTest(); + pp.addProperty(XmlDirectoryStorageAdapter.DIRECTORY_STORAGE_PROP,file.getPath()); + if(extensions.isPresent()) { + pp.addProperty(XmlDirectoryStorageAdapter.INCLUDE_EXT_PROP, extensions.get()); + } + + XmlDirectoryStorageAdapter dsa = new XmlDirectoryStorageAdapter(); + return dsa.instantiate(pp); + } + + private Persister instantiatePersisterFromAdapter(File file){ + return instantiatePersisterFromAdapter(file, Optional.absent()); + } + @Test public void testEmptyDirectory() throws Exception { File folder = new File("target/emptyFolder"); folder.mkdir(); - tested = new XmlDirectoryPersister((folder)); + + tested = instantiatePersisterFromAdapter(folder); assertEquals(Collections.emptyList(), tested.loadLastConfigs()); try { @@ -59,14 +79,22 @@ public class DirectoryStorageAdapterTest { @Test public void testOneFile() throws Exception { File folder = getFolder("oneFile"); - tested = new XmlDirectoryPersister(folder); - logger.info("Testing : "+tested.toString()); + tested = instantiatePersisterFromAdapter(folder, Optional.of("xml")); + + logger.info("Testing : " + tested.toString()); List results = tested.loadLastConfigs(); assertEquals(1, results.size()); ConfigSnapshotHolder result = results.get(0); assertResult(result, "1", "cap1&rev", "cap2", "capa a"); } + @Test + public void testOneFileWrongExtension() throws Exception { + File folder = getFolder("oneFile"); + tested = instantiatePersisterFromAdapter(folder, Optional.of("aa, bb")); + logger.info("Testing : " + tested.toString()); + } + private void assertResult(ConfigSnapshotHolder result, String s, String... caps) { assertEquals(s, result.getConfigSnapshot().replaceAll("\\s", "")); int i = 0; @@ -76,16 +104,45 @@ public class DirectoryStorageAdapterTest { } @Test - public void testTwoFiles() throws Exception { + public void testTwoFilesAllExtensions() throws Exception { File folder = getFolder("twoFiles"); - tested = new XmlDirectoryPersister((folder)); - logger.info("Testing : "+tested.toString()); + tested = instantiatePersisterFromAdapter(folder); + logger.info("Testing : " + tested.toString()); List results = tested.loadLastConfigs(); assertEquals(2, results.size()); assertResult(results.get(0), "1", "cap1-a", "cap2-a", "capa a-a"); assertResult(results.get(1), "2", "cap1-b", "cap2-b", "capa a-b"); + } + @Test + public void testTwoFilesTwoExtensions() throws Exception { + File folder = getFolder("twoFiles"); + tested = instantiatePersisterFromAdapter(folder, Optional.of("xml, xml2")); + logger.info("Testing : " + tested.toString()); + assertEquals(2, tested.loadLastConfigs().size()); + } + + @Test + public void testTwoFilesOnlyOneExtension() throws Exception { + File folder = getFolder("twoFiles"); + tested = instantiatePersisterFromAdapter(folder, Optional.of("xml")); + logger.info("Testing : " + tested.toString()); + List results = tested.loadLastConfigs(); + assertEquals(1, results.size()); + + assertResult(results.get(0), "1", "cap1-a", "cap2-a", "capa a-a"); + } + + @Test + public void testTwoFilesOneInvalid() throws Exception { + File folder = getFolder("twoFiles_corrupt"); + tested = instantiatePersisterFromAdapter(folder, Optional.of("xml")); + logger.info("Testing : " + tested.toString()); + List results = tested.loadLastConfigs(); + assertEquals(1, results.size()); + + assertResult(results.get(0), "1", "cap1-a", "cap2-a", "capa a-a"); } }