Commit 9fe4174c2233af803ee6ff5a73a75d7cc7a9014d

Authored by Dancovich
2 parents f40f1e32 6819fe58
Exists in master

Merge remote-tracking branch 'origin/2.4.0' into 2.4.0

Showing 20 changed files with 328 additions and 175 deletions   Show diff stats
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerDefaultTestWithName.java
... ... @@ -1,50 +0,0 @@
1   -package connection.producer;
2   -
3   -import static org.junit.Assert.assertEquals;
4   -import static org.junit.Assert.assertNotNull;
5   -import static org.junit.Assert.fail;
6   -
7   -import java.sql.Connection;
8   -import java.sql.SQLException;
9   -
10   -import javax.inject.Inject;
11   -
12   -import org.jboss.arquillian.container.test.api.Deployment;
13   -import org.jboss.arquillian.junit.Arquillian;
14   -import org.jboss.shrinkwrap.api.spec.WebArchive;
15   -import org.junit.Test;
16   -import org.junit.runner.RunWith;
17   -
18   -import test.Tests;
19   -import br.gov.frameworkdemoiselle.internal.configuration.JDBCConfig;
20   -
21   -@RunWith(Arquillian.class)
22   -public class ConnectionProducerDefaultTestWithName {
23   -
24   - @Inject
25   - private JDBCConfig config;
26   -
27   - private static String PATH = "src/test/resources/producer";
28   -
29   - @Inject
30   - private Connection connection;
31   -
32   - @Deployment
33   - public static WebArchive createDeployment() {
34   - WebArchive deployment = Tests.createDeployment(ConnectionProducerDefaultTestWithName.class);
35   - deployment.addAsResource(Tests.createFileAsset(PATH + "/default-producer-with-name.properties"), "default-producer-with-name.properties");
36   - return deployment;
37   - }
38   -
39   - @Test
40   - public void createDefaultConnectionWithoutName(){
41   - try {
42   - assertNotNull(connection);
43   - //verificar se retorna realmente o nome da conexão
44   - assertEquals(connection.getCatalog(), config.getDefaultDataSourceName());
45   - } catch (SQLException e) {
46   - e.printStackTrace();
47   - fail();
48   - }
49   - }
50   -}
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerDefaultTestWithoutName.java
... ... @@ -1,39 +0,0 @@
1   -package connection.producer;
2   -
3   -import static org.junit.Assert.assertNotNull;
4   -import static org.junit.Assert.fail;
5   -
6   -import java.sql.Connection;
7   -import java.sql.SQLException;
8   -
9   -import javax.inject.Inject;
10   -
11   -import org.junit.Test;
12   -
13   -import br.gov.frameworkdemoiselle.internal.configuration.JDBCConfig;
14   -
15   -
16   -public class ConnectionProducerDefaultTestWithoutName {
17   -
18   - @Inject
19   - private JDBCConfig config;
20   -
21   - private String PATH = "src/test/resources/producer";
22   -
23   - @Inject
24   - private Connection connection;
25   -
26   - @Test
27   - public void createDefaultConnectionWithoutName(){
28   - //utilizar o arquivo de propriedade sem o name
29   - try {
30   - assertNotNull(connection);
31   - //verificar se retorna realmente o nome da conexão
32   - assertNotNull(connection.getCatalog());
33   - } catch (SQLException e) {
34   - // TODO Auto-generated catch block
35   - e.printStackTrace();
36   - fail();
37   - }
38   - }
39   -}
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerMultipleConnectionsTest.java 0 → 100644
... ... @@ -0,0 +1,55 @@
  1 +package connection.producer;
  2 +
  3 +import static org.junit.Assert.assertEquals;
  4 +
  5 +import java.sql.Connection;
  6 +import java.sql.SQLException;
  7 +
  8 +import javax.inject.Inject;
  9 +
  10 +import org.jboss.arquillian.container.test.api.Deployment;
  11 +import org.jboss.arquillian.junit.Arquillian;
  12 +import org.jboss.shrinkwrap.api.spec.WebArchive;
  13 +import org.junit.Test;
  14 +import org.junit.runner.RunWith;
  15 +
  16 +import test.Tests;
  17 +import br.gov.frameworkdemoiselle.annotation.Name;
  18 +
  19 +@RunWith(Arquillian.class)
  20 +public class ConnectionProducerMultipleConnectionsTest {
  21 +
  22 + private static String PATH = "src/test/resources/producer/multiple-connections";
  23 +
  24 + @Inject
  25 + @Name("conn1")
  26 + private Connection conn1;
  27 +
  28 + @Inject
  29 + @Name("conn2")
  30 + private Connection conn2;
  31 +
  32 + // Conexão Default
  33 + @Inject
  34 + private Connection conn3;
  35 +
  36 + @Inject
  37 + @Name("conn4")
  38 + private Connection conn4;
  39 +
  40 + @Deployment
  41 + public static WebArchive createDeployment() {
  42 + WebArchive deployment = Tests.createDeployment(ConnectionProducerMultipleConnectionsTest.class);
  43 + deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"), "demoiselle.properties");
  44 + return deployment;
  45 + }
  46 +
  47 + @Test
  48 + public void createConnection() throws SQLException {
  49 + assertEquals(conn1.getMetaData().getURL(), "jdbc:hsqldb:hsql1");
  50 + assertEquals(conn2.getMetaData().getURL(), "jdbc:hsqldb:hsql2");
  51 + assertEquals(conn3.getMetaData().getURL(), "jdbc:hsqldb:hsql3");
  52 + assertEquals(conn4.getMetaData().getURL(), "jdbc:derby:target/databases/derby");
  53 + }
  54 +
  55 +}
... ...
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerNoConnectionDriverTest.java 0 → 100644
... ... @@ -0,0 +1,41 @@
  1 +package connection.producer;
  2 +
  3 +import java.sql.Connection;
  4 +
  5 +import javax.enterprise.inject.Instance;
  6 +import javax.inject.Inject;
  7 +
  8 +import org.jboss.arquillian.container.test.api.Deployment;
  9 +import org.jboss.arquillian.junit.Arquillian;
  10 +import org.jboss.shrinkwrap.api.spec.WebArchive;
  11 +import org.junit.Test;
  12 +import org.junit.runner.RunWith;
  13 +
  14 +import test.Tests;
  15 +import br.gov.frameworkdemoiselle.annotation.Name;
  16 +
  17 +@RunWith(Arquillian.class)
  18 +public class ConnectionProducerNoConnectionDriverTest {
  19 +
  20 + private static String PATH = "src/test/resources/producer/no-connection-driver";
  21 +
  22 + @Inject
  23 + @Name("conn1")
  24 + private Instance<Connection> conn1;
  25 +
  26 + @Deployment
  27 + public static WebArchive createDeployment() {
  28 + WebArchive deployment = Tests.createDeployment(ConnectionProducerNoConnectionDriverTest.class);
  29 + deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"), "demoiselle.properties");
  30 + return deployment;
  31 + }
  32 +
  33 + /**
  34 + * TODO Refinar a exceção esperada
  35 + */
  36 + @Test(expected = Exception.class)
  37 + public void failOnCreateConnection() {
  38 + conn1.get();
  39 + }
  40 +
  41 +}
... ...
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerNoConnectionUrlTest.java 0 → 100644
... ... @@ -0,0 +1,41 @@
  1 +package connection.producer;
  2 +
  3 +import java.sql.Connection;
  4 +
  5 +import javax.enterprise.inject.Instance;
  6 +import javax.inject.Inject;
  7 +
  8 +import org.jboss.arquillian.container.test.api.Deployment;
  9 +import org.jboss.arquillian.junit.Arquillian;
  10 +import org.jboss.shrinkwrap.api.spec.WebArchive;
  11 +import org.junit.Test;
  12 +import org.junit.runner.RunWith;
  13 +
  14 +import test.Tests;
  15 +import br.gov.frameworkdemoiselle.annotation.Name;
  16 +
  17 +@RunWith(Arquillian.class)
  18 +public class ConnectionProducerNoConnectionUrlTest {
  19 +
  20 + private static String PATH = "src/test/resources/producer/no-connection-url";
  21 +
  22 + @Inject
  23 + @Name("conn1")
  24 + private Instance<Connection> conn1;
  25 +
  26 + @Deployment
  27 + public static WebArchive createDeployment() {
  28 + WebArchive deployment = Tests.createDeployment(ConnectionProducerNoConnectionUrlTest.class);
  29 + deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"), "demoiselle.properties");
  30 + return deployment;
  31 + }
  32 +
  33 + /**
  34 + * TODO Refinar a exceção esperada
  35 + */
  36 + @Test(expected = Exception.class)
  37 + public void failOnCreateConnection() {
  38 + conn1.get();
  39 + }
  40 +
  41 +}
... ...
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerWithJndiTest.java 0 → 100644
... ... @@ -0,0 +1,40 @@
  1 +package connection.producer;
  2 +
  3 +import static org.junit.Assert.assertEquals;
  4 +
  5 +import java.sql.Connection;
  6 +import java.sql.SQLException;
  7 +
  8 +import javax.inject.Inject;
  9 +
  10 +import org.jboss.arquillian.container.test.api.Deployment;
  11 +import org.jboss.arquillian.junit.Arquillian;
  12 +import org.jboss.shrinkwrap.api.spec.WebArchive;
  13 +import org.junit.Test;
  14 +import org.junit.runner.RunWith;
  15 +
  16 +import test.Tests;
  17 +import br.gov.frameworkdemoiselle.annotation.Name;
  18 +
  19 +@RunWith(Arquillian.class)
  20 +public class ConnectionProducerWithJndiTest {
  21 +
  22 + private static String PATH = "src/test/resources/producer/with-jndi";
  23 +
  24 + @Inject
  25 + @Name("conn1")
  26 + private Connection conn1;
  27 +
  28 + @Deployment
  29 + public static WebArchive createDeployment() {
  30 + WebArchive deployment = Tests.createDeployment(ConnectionProducerWithJndiTest.class);
  31 + deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"), "demoiselle.properties");
  32 + return deployment;
  33 + }
  34 +
  35 + @Test
  36 + public void createConnection() throws SQLException {
  37 + assertEquals(conn1.getMetaData().getURL(), "jdbc:derby:target/databases/derby");
  38 + }
  39 +
  40 +}
0 41 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerWithNameTest.java 0 → 100644
... ... @@ -0,0 +1,39 @@
  1 +package connection.producer;
  2 +
  3 +import static org.junit.Assert.assertNotNull;
  4 +
  5 +import java.sql.Connection;
  6 +
  7 +import javax.inject.Inject;
  8 +
  9 +import org.jboss.arquillian.container.test.api.Deployment;
  10 +import org.jboss.arquillian.junit.Arquillian;
  11 +import org.jboss.shrinkwrap.api.spec.WebArchive;
  12 +import org.junit.Test;
  13 +import org.junit.runner.RunWith;
  14 +
  15 +import test.Tests;
  16 +import br.gov.frameworkdemoiselle.annotation.Name;
  17 +
  18 +@RunWith(Arquillian.class)
  19 +public class ConnectionProducerWithNameTest {
  20 +
  21 + private static String PATH = "src/test/resources/producer/with-name";
  22 +
  23 + @Inject
  24 + @Name("conn1")
  25 + private Connection conn1;
  26 +
  27 + @Deployment
  28 + public static WebArchive createDeployment() {
  29 + WebArchive deployment = Tests.createDeployment(ConnectionProducerWithNameTest.class);
  30 + deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"), "demoiselle.properties");
  31 + return deployment;
  32 + }
  33 +
  34 + @Test
  35 + public void createConnection() {
  36 + assertNotNull(conn1);
  37 + }
  38 +
  39 +}
... ...
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerWithoutJndiTest.java 0 → 100644
... ... @@ -0,0 +1,41 @@
  1 +package connection.producer;
  2 +
  3 +import static org.junit.Assert.assertEquals;
  4 +
  5 +import java.sql.Connection;
  6 +import java.sql.SQLException;
  7 +
  8 +import javax.enterprise.inject.Instance;
  9 +import javax.inject.Inject;
  10 +
  11 +import org.jboss.arquillian.container.test.api.Deployment;
  12 +import org.jboss.arquillian.junit.Arquillian;
  13 +import org.jboss.shrinkwrap.api.spec.WebArchive;
  14 +import org.junit.Test;
  15 +import org.junit.runner.RunWith;
  16 +
  17 +import test.Tests;
  18 +import br.gov.frameworkdemoiselle.annotation.Name;
  19 +
  20 +@RunWith(Arquillian.class)
  21 +public class ConnectionProducerWithoutJndiTest {
  22 +
  23 + private static String PATH = "src/test/resources/producer/without-jndi";
  24 +
  25 + @Inject
  26 + @Name("conn1")
  27 + private Instance<Connection> conn1;
  28 +
  29 + @Deployment
  30 + public static WebArchive createDeployment() {
  31 + WebArchive deployment = Tests.createDeployment(ConnectionProducerWithoutJndiTest.class);
  32 + deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"), "demoiselle.properties");
  33 + return deployment;
  34 + }
  35 +
  36 + @Test(expected=Exception.class)
  37 + public void createConnection() throws SQLException {
  38 + conn1.get();
  39 + }
  40 +
  41 +}
0 42 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/java/connection/producer/ConnectionProducerWithoutNameTest.java 0 → 100644
... ... @@ -0,0 +1,38 @@
  1 +package connection.producer;
  2 +
  3 +import static org.junit.Assert.assertNotNull;
  4 +
  5 +import java.sql.Connection;
  6 +
  7 +import javax.inject.Inject;
  8 +
  9 +import org.jboss.arquillian.container.test.api.Deployment;
  10 +import org.jboss.arquillian.junit.Arquillian;
  11 +import org.jboss.shrinkwrap.api.spec.WebArchive;
  12 +import org.junit.Ignore;
  13 +import org.junit.Test;
  14 +import org.junit.runner.RunWith;
  15 +
  16 +import test.Tests;
  17 +
  18 +@RunWith(Arquillian.class)
  19 +public class ConnectionProducerWithoutNameTest {
  20 +
  21 + private static String PATH = "src/test/resources/producer/without-name";
  22 +
  23 + @Inject
  24 + private Connection connection;
  25 +
  26 + @Deployment
  27 + public static WebArchive createDeployment() {
  28 + WebArchive deployment = Tests.createDeployment(ConnectionProducerWithoutNameTest.class);
  29 + deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"), "demoiselle.properties");
  30 + return deployment;
  31 + }
  32 +
  33 + @Test
  34 + public void createConnection(){
  35 + assertNotNull(connection);
  36 + }
  37 +
  38 +}
... ...
impl/extension/jdbc/src/test/java/xxx/XTest.java
... ... @@ -1,38 +0,0 @@
1   -package xxx;
2   -
3   -import static junit.framework.Assert.assertNotNull;
4   -
5   -import java.sql.Connection;
6   -
7   -import javax.inject.Inject;
8   -
9   -import org.jboss.arquillian.container.test.api.Deployment;
10   -import org.jboss.arquillian.junit.Arquillian;
11   -import org.jboss.shrinkwrap.api.spec.WebArchive;
12   -import org.junit.Test;
13   -import org.junit.runner.RunWith;
14   -
15   -import test.Tests;
16   -
17   -@RunWith(Arquillian.class)
18   -public class XTest {
19   -
20   - private static final String PATH = "src/test/resources/xxx";
21   -
22   - @Inject
23   - private Connection conn;
24   -
25   - @Deployment
26   - public static WebArchive createDeployment() {
27   - WebArchive deployment = Tests.createDeployment(XTest.class);
28   - deployment.addAsResource(Tests.createFileAsset(PATH + "/demoiselle.properties"),
29   - "demoiselle.properties");
30   -
31   - return deployment;
32   - }
33   -
34   - @Test
35   - public void x() {
36   - assertNotNull(conn);
37   - }
38   -}
impl/extension/jdbc/src/test/resources/producer/default-producer-with-name.properties
... ... @@ -1,5 +0,0 @@
1   -frameworkdemoiselle.persistence.driver.class=org.h2.jdbcx.JdbcDataSource
2   -frameworkdemoiselle.persistence.url=jdbc:h2:mem:test;DB_CLOSE_DELAY=-1
3   -frameworkdemoiselle.persistence.username=sa
4   -frameworkdemoiselle.persistence.password=sa
5   -frameworkdemoiselle.persistence.default.datasource.name=databasename
6 0 \ No newline at end of file
impl/extension/jdbc/src/test/resources/producer/default-producer-without-name.properties
... ... @@ -1,4 +0,0 @@
1   -frameworkdemoiselle.persistence.driver.class=org.h2.jdbcx.JdbcDataSource
2   -frameworkdemoiselle.persistence.url=jdbc:h2:mem:test;DB_CLOSE_DELAY=-1
3   -frameworkdemoiselle.persistence.username=sa
4   -frameworkdemoiselle.persistence.password=sa
5 0 \ No newline at end of file
impl/extension/jdbc/src/test/resources/producer/multiple-connections/demoiselle.properties 0 → 100644
... ... @@ -0,0 +1,18 @@
  1 +frameworkdemoiselle.persistence.conn1.driver.class=org.hsqldb.jdbcDriver
  2 +frameworkdemoiselle.persistence.conn1.url=jdbc:hsqldb:hsql1
  3 +frameworkdemoiselle.persistence.conn1.username=sa
  4 +frameworkdemoiselle.persistence.conn1.password=
  5 +
  6 +frameworkdemoiselle.persistence.conn2.driver.class=org.hsqldb.jdbcDriver
  7 +frameworkdemoiselle.persistence.conn2.url=jdbc:hsqldb:hsql2
  8 +frameworkdemoiselle.persistence.conn2.username=sa
  9 +frameworkdemoiselle.persistence.conn2.password=
  10 +
  11 +frameworkdemoiselle.persistence.conn3.driver.class=org.hsqldb.jdbcDriver
  12 +frameworkdemoiselle.persistence.conn3.url=jdbc:hsqldb:hsql3
  13 +frameworkdemoiselle.persistence.conn3.username=sa
  14 +frameworkdemoiselle.persistence.conn3.password=
  15 +
  16 +frameworkdemoiselle.persistence.conn4.jndi.name=jdbc/arquillian
  17 +
  18 +frameworkdemoiselle.persistence.default.datasource.name=conn3
0 19 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/resources/producer/no-connection-driver/demoiselle.properties 0 → 100644
... ... @@ -0,0 +1,3 @@
  1 +frameworkdemoiselle.persistence.conn1.url=jdbc:hsqldb:hsql5
  2 +frameworkdemoiselle.persistence.conn1.username=sa
  3 +frameworkdemoiselle.persistence.conn1.password=
0 4 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/resources/producer/no-connection-url/demoiselle.properties 0 → 100644
... ... @@ -0,0 +1,3 @@
  1 +frameworkdemoiselle.persistence.conn1.driver.class=org.hsqldb.jdbcDriver
  2 +frameworkdemoiselle.persistence.conn1.username=sa
  3 +frameworkdemoiselle.persistence.conn1.password=
0 4 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/resources/producer/with-jndi/demoiselle.properties 0 → 100644
... ... @@ -0,0 +1 @@
  1 +frameworkdemoiselle.persistence.conn1.jndi.name=jdbc/arquillian
0 2 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/resources/producer/with-name/demoiselle.properties 0 → 100644
... ... @@ -0,0 +1,4 @@
  1 +frameworkdemoiselle.persistence.conn1.driver.class=org.hsqldb.jdbcDriver
  2 +frameworkdemoiselle.persistence.conn1.url=jdbc:hsqldb:hsql
  3 +frameworkdemoiselle.persistence.conn1.username=sa
  4 +frameworkdemoiselle.persistence.conn1.password=
0 5 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/resources/producer/without-jndi/demoiselle.properties 0 → 100644
impl/extension/jdbc/src/test/resources/producer/without-name/demoiselle.properties 0 → 100644
... ... @@ -0,0 +1,4 @@
  1 +frameworkdemoiselle.persistence.driver.class=org.hsqldb.jdbcDriver
  2 +frameworkdemoiselle.persistence.url=jdbc:hsqldb:hsql
  3 +frameworkdemoiselle.persistence.username=sa
  4 +frameworkdemoiselle.persistence.password=
0 5 \ No newline at end of file
... ...
impl/extension/jdbc/src/test/resources/xxx/demoiselle.properties
... ... @@ -1,39 +0,0 @@
1   -# Demoiselle Framework
2   -# Copyright (C) 2010 SERPRO
3   -# ----------------------------------------------------------------------------
4   -# This file is part of Demoiselle Framework.
5   -#
6   -# Demoiselle Framework is free software; you can redistribute it and/or
7   -# modify it under the terms of the GNU Lesser General Public License version 3
8   -# as published by the Free Software Foundation.
9   -#
10   -# This program is distributed in the hope that it will be useful,
11   -# but WITHOUT ANY WARRANTY; without even the implied warranty of
12   -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13   -# GNU General Public License for more details.
14   -#
15   -# You should have received a copy of the GNU Lesser General Public License version 3
16   -# along with this program; if not, see <http://www.gnu.org/licenses/>
17   -# or write to the Free Software Foundation, Inc., 51 Franklin Street,
18   -# Fifth Floor, Boston, MA 02110-1301, USA.
19   -# ----------------------------------------------------------------------------
20   -# Este arquivo é parte do Framework Demoiselle.
21   -#
22   -# O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou
23   -# modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação
24   -# do Software Livre (FSF).
25   -#
26   -# Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA
27   -# GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou
28   -# APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português
29   -# para maiores detalhes.
30   -#
31   -# Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título
32   -# "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/>
33   -# ou escreva para a Fundação do Software Livre (FSF) Inc.,
34   -# 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA.
35   -
36   -frameworkdemoiselle.persistence.driver.class=org.hsqldb.jdbcDriver
37   -frameworkdemoiselle.persistence.url=jdbc:hsqldb:mem:xxx
38   -frameworkdemoiselle.persistence.username=sa
39   -frameworkdemoiselle.persistence.password=