diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/AbstractResourceConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/AbstractResourceConfig.java new file mode 100644 index 0000000..eda3ae3 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/AbstractResourceConfig.java @@ -0,0 +1,24 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +public abstract class AbstractResourceConfig { + + private int primitiveInteger; + + private String string; + + public int getPrimitiveInteger() { + return primitiveInteger; + } + + public void setPrimitiveInteger(int primitiveInteger) { + this.primitiveInteger = primitiveInteger; + } + + public String getStringWithComma() { + return string; + } + + public void setStringWithComma(String stringWithComma) { + this.string = stringWithComma; + } +} \ No newline at end of file diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/ConfigurationResourceTest.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/ConfigurationResourceTest.java new file mode 100644 index 0000000..6fcc3d6 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/ConfigurationResourceTest.java @@ -0,0 +1,107 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static junit.framework.Assert.assertEquals; + +import java.io.File; + +import javax.inject.Inject; + +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit.Arquillian; +import org.jboss.shrinkwrap.api.asset.FileAsset; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.Test; +import org.junit.runner.RunWith; + +import br.gov.frameworkdemoiselle.configuration.AbstractConfigurationTest; + +@RunWith(Arquillian.class) +public class ConfigurationResourceTest extends AbstractConfigurationTest{ + + @Inject + private PropertiesDefaultFileConfig propDefault; + + @Inject + private PropertiesNamedDefaultFileConfig propNamedDefault; + + @Inject + private PropertiesNotDefaultFileConfig propNotDefault; + + @Inject + private PropertiesWithoutFileConfig propWithoutFile; + + @Inject + private XMLDefaultFileConfig xmlDefault; + + @Inject + private XMLNamedDefaultFileConfig xmlNamedDefault; + + @Inject + private XMLNotDefaultFileConfig xmlNotDefault; + + @Inject + private XMLWithoutFileConfig xmlWithoutFile; + + @Deployment + public static JavaArchive createDeployment() { + JavaArchive deployment = createConfigurationDeployment(); + + deployment.addPackages(true, ConfigurationResourceTest.class.getPackage()); + deployment.addAsResource(new FileAsset(new File( + "src/test/resources/configuration/resource/demoiselle.properties")), "demoiselle.properties"). + addAsResource(new FileAsset(new File( + "src/test/resources/configuration/resource/demoiselle.xml")), "demoiselle.xml"). + addAsResource(new FileAsset(new File( + "src/test/resources/configuration/resource/resource.properties")), "resource.properties"). + addAsResource(new FileAsset(new File( + "src/test/resources/configuration/resource/resource.xml")), "resource.xml"); + + return deployment; + } + + @Test + public void loadFromDefaultFile(){ + int expectedInt = 1; + String expectedString = "demoiselle framework"; + + assertEquals(expectedInt, propDefault.getPrimitiveInteger()); + assertEquals(expectedString, propDefault.getStringWithComma()); + + assertEquals(expectedInt, xmlDefault.getPrimitiveInteger()); + assertEquals(expectedString, xmlDefault.getStringWithComma()); + } + + @Test + public void loadFromNamedDefaultFile(){ + int expectedInt = 1; + String expectedString = "demoiselle framework"; + + assertEquals(expectedInt, propNamedDefault.getPrimitiveInteger()); + assertEquals(expectedString, propNamedDefault.getStringWithComma()); + + assertEquals(expectedInt, xmlNamedDefault.getPrimitiveInteger()); + assertEquals(expectedString, xmlNamedDefault.getStringWithComma()); + } + + @Test + public void loadFromNotDefaultFile(){ + int expectedInt = 2; + String expectedString = "demoiselle framework from resource"; + + assertEquals(expectedInt, propNotDefault.getPrimitiveInteger()); + assertEquals(expectedString, propNotDefault.getStringWithComma()); + + assertEquals(expectedInt, xmlNotDefault.getPrimitiveInteger()); + assertEquals(expectedString, xmlNotDefault.getStringWithComma()); + } + + @Test + public void loadFromNonexistentFile(){ + assertEquals(0, propWithoutFile.getPrimitiveInteger()); + assertEquals(null, propWithoutFile.getStringWithComma()); + + assertEquals(0, xmlWithoutFile.getPrimitiveInteger()); + assertEquals(null, xmlWithoutFile.getStringWithComma()); + } + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesDefaultFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesDefaultFileConfig.java new file mode 100644 index 0000000..ad382f4 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesDefaultFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.PROPERTIES; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(type = PROPERTIES) +public class PropertiesDefaultFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesNamedDefaultFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesNamedDefaultFileConfig.java new file mode 100644 index 0000000..4705b82 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesNamedDefaultFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.PROPERTIES; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(resource="demoiselle", type = PROPERTIES) +public class PropertiesNamedDefaultFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesNotDefaultFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesNotDefaultFileConfig.java new file mode 100644 index 0000000..f8cf7e0 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesNotDefaultFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.PROPERTIES; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(resource="resource", type = PROPERTIES) +public class PropertiesNotDefaultFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesWithoutFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesWithoutFileConfig.java new file mode 100644 index 0000000..a4d74d6 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/PropertiesWithoutFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.PROPERTIES; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(resource="nofile", type = PROPERTIES) +public class PropertiesWithoutFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLDefaultFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLDefaultFileConfig.java new file mode 100644 index 0000000..20b8e11 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLDefaultFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.XML; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(type = XML) +public class XMLDefaultFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLNamedDefaultFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLNamedDefaultFileConfig.java new file mode 100644 index 0000000..38a2ff4 --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLNamedDefaultFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.XML; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(resource="demoiselle", type = XML) +public class XMLNamedDefaultFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLNotDefaultFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLNotDefaultFileConfig.java new file mode 100644 index 0000000..21d4f5d --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLNotDefaultFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.XML; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(resource="resource", type = XML) +public class XMLNotDefaultFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLWithoutFileConfig.java b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLWithoutFileConfig.java new file mode 100644 index 0000000..32b617b --- /dev/null +++ b/impl/core/src/test/java/br/gov/frameworkdemoiselle/configuration/resource/XMLWithoutFileConfig.java @@ -0,0 +1,9 @@ +package br.gov.frameworkdemoiselle.configuration.resource; + +import static br.gov.frameworkdemoiselle.configuration.ConfigType.XML; +import br.gov.frameworkdemoiselle.configuration.Configuration; + +@Configuration(resource="nofile", type = XML) +public class XMLWithoutFileConfig extends AbstractResourceConfig{ + +} diff --git a/impl/core/src/test/resources/configuration/resource/demoiselle.properties b/impl/core/src/test/resources/configuration/resource/demoiselle.properties new file mode 100644 index 0000000..4914217 --- /dev/null +++ b/impl/core/src/test/resources/configuration/resource/demoiselle.properties @@ -0,0 +1,2 @@ +primitiveInteger=1 +string=demoiselle framework diff --git a/impl/core/src/test/resources/configuration/resource/demoiselle.xml b/impl/core/src/test/resources/configuration/resource/demoiselle.xml new file mode 100644 index 0000000..8fe1867 --- /dev/null +++ b/impl/core/src/test/resources/configuration/resource/demoiselle.xml @@ -0,0 +1,40 @@ + + + 1 + demoiselle framework + \ No newline at end of file diff --git a/impl/core/src/test/resources/configuration/resource/resource.properties b/impl/core/src/test/resources/configuration/resource/resource.properties new file mode 100644 index 0000000..d54b24a --- /dev/null +++ b/impl/core/src/test/resources/configuration/resource/resource.properties @@ -0,0 +1,2 @@ +primitiveInteger=2 +string=demoiselle framework from resource diff --git a/impl/core/src/test/resources/configuration/resource/resource.xml b/impl/core/src/test/resources/configuration/resource/resource.xml new file mode 100644 index 0000000..d852536 --- /dev/null +++ b/impl/core/src/test/resources/configuration/resource/resource.xml @@ -0,0 +1,40 @@ + + + 2 + demoiselle framework from resource + \ No newline at end of file -- libgit2 0.21.2