1. Project Clover database Mon Dec 22 2025 14:59:38 CST
  2. Package org.europa.together.application

File JdbcActionsTest.java

 

Code metrics

0
59
16
1
180
141
16
0.27
3.69
16
1

Classes

Class Line # Actions
JdbcActionsTest 26 59 0% 16 0
1.0100%
 

Contributing tests

This file is covered by 12 tests. .

Source view

1    package org.europa.together.application;
2   
3    import static com.google.code.beanmatchers.BeanMatchers.*;
4    import java.sql.ResultSet;
5    import org.europa.together.JUnit5Preperator;
6    import org.europa.together.business.DatabaseActions;
7    import org.europa.together.business.Logger;
8    import org.europa.together.domain.JdbcConnection;
9    import org.europa.together.domain.LogLevel;
10    import org.europa.together.utils.Constraints;
11    import static org.hamcrest.MatcherAssert.assertThat;
12    import org.junit.jupiter.api.AfterAll;
13    import org.junit.jupiter.api.AfterEach;
14    import static org.junit.jupiter.api.Assertions.*;
15    import org.junit.jupiter.api.Assumptions;
16    import org.junit.jupiter.api.BeforeAll;
17    import org.junit.jupiter.api.BeforeEach;
18    import org.junit.jupiter.api.Test;
19    import org.junit.jupiter.api.extension.ExtendWith;
20    import org.springframework.test.context.ContextConfiguration;
21    import org.springframework.test.context.junit.jupiter.SpringExtension;
22   
23    @SuppressWarnings("unchecked")
24    @ExtendWith({SpringExtension.class, JUnit5Preperator.class})
25    @ContextConfiguration(locations = {"/applicationContext.xml"})
 
26    public class JdbcActionsTest {
27   
28    private static final Logger LOGGER = new LogbackLogger(JdbcActionsTest.class);
29   
30    private final String sql_create
31    = "CREATE TABLE IF NOT EXISTS test (column_01 int, column_02 char(255));";
32    private final String sql_drop = "DROP TABLE IF EXISTS test;";
33   
34    //<editor-fold defaultstate="collapsed" desc="Test Preparation">
 
35  1 toggle @BeforeAll
36    static void setUp() {
37  1 Assumptions.assumeTrue(true);
38   
39  1 LOGGER.log("Assumptions passed ...\n\n", LogLevel.DEBUG);
40    }
41   
 
42  1 toggle @AfterAll
43    static void tearDown() {
44  1 LOGGER.log("### TEST SUITE TERMINATED.\n", LogLevel.TRACE);
45    }
46   
 
47  12 toggle @BeforeEach
48    void testCaseInitialization() {
49    }
50   
 
51  12 toggle @AfterEach
52    void testCaseTermination() {
53  12 LOGGER.log("TEST CASE TERMINATED.", LogLevel.TRACE);
54    }
55    //</editor-fold>
56   
 
57  1 toggle @Test
58    void constructor() {
59  1 LOGGER.log("TEST CASE: constructor", LogLevel.DEBUG);
60   
61  1 assertThat(JdbcActions.class, hasValidBeanConstructor());
62    }
63   
 
64  1 toggle @Test
65    void connect() {
66  1 LOGGER.log("TEST CASE: connect", LogLevel.DEBUG);
67   
68  1 DatabaseActions dbms = new JdbcActions();
69  1 assertTrue(dbms.connect("test"));
70    }
71   
 
72  1 toggle @Test
73    void failConnect() {
74  1 LOGGER.log("TEST CASE: failConnect", LogLevel.DEBUG);
75   
76  1 DatabaseActions dbms = new JdbcActions();
77  1 assertFalse(dbms.connect(Constraints.SYSTEM_APP_DIR
78    + "/target/test-classes/"
79    + "org/europa/together/properties/jdbc-test-fail.properties"));
80    }
81   
 
82  1 toggle @Test
83    void fallbackLoadProperties() {
84  1 LOGGER.log("TEST CASE: fallbackLoadProperties", LogLevel.DEBUG);
85   
86  1 DatabaseActions dbms = new JdbcActions();
87  1 assertTrue(dbms.connect(null));
88    }
89   
 
90  1 toggle @Test
91    void executeQuery() throws Exception {
92  1 LOGGER.log("TEST CASE: executeQuery", LogLevel.DEBUG);
93   
94  1 DatabaseActions dbms = new JdbcActions();
95  1 dbms.connect("test");
96   
97  1 assertNull(dbms.executeQuery(sql_drop));
98  1 assertNull(dbms.executeQuery(sql_create));
99  1 dbms.executeQuery(sql_drop);
100    }
101   
 
102  1 toggle @Test
103    void failExecuteQuery() throws Exception {
104  1 LOGGER.log("TEST CASE: failExecuteQuery", LogLevel.DEBUG);
105   
106  1 DatabaseActions dbms = new JdbcActions();
107  1 dbms.connect("test");
108  1 assertThrows(Exception.class, () -> {
109  1 dbms.executeQuery("SELECT * FROM foo;");
110    });
111    }
112   
 
113  1 toggle @Test
114    void failExecuteQueryNoConnection() throws Exception {
115  1 LOGGER.log("TEST CASE: failExecuteQuery", LogLevel.DEBUG);
116   
117  1 DatabaseActions dbms = new JdbcActions();
118  1 assertNull(dbms.executeQuery("SELECT * FROM foo;"));
119    }
120   
 
121  1 toggle @Test
122    void executeSqlFileFromClasspath() throws Exception {
123  1 LOGGER.log("TEST CASE: executeSqlFileFromClasspath", LogLevel.DEBUG);
124   
125  1 DatabaseActions dbms = new JdbcActions();
126  1 dbms.connect("test");
127  1 dbms.executeQuery(sql_drop);
128  1 String file = "org/europa/together/sql/test.sql";
129  1 assertTrue(dbms.executeSqlFromClasspath(file));
130  1 dbms.executeQuery(sql_drop);
131    }
132   
 
133  1 toggle @Test
134    void sqlFileNotFound() {
135  1 LOGGER.log("TEST CASE: sqlFileNotFound", LogLevel.DEBUG);
136   
137  1 DatabaseActions dbms = new JdbcActions();
138  1 dbms.connect("test");
139  1 String file = "org/europa/together/sql/file-not-exist.sql";
140  1 assertFalse(dbms.executeSqlFromClasspath(file));
141    }
142   
 
143  1 toggle @Test
144    void getResultSet() throws Exception {
145  1 LOGGER.log("TEST CASE: getResultSet", LogLevel.DEBUG);
146   
147  1 String SQL_FILE
148    = "org/europa/together/sql/test.sql";
149  1 DatabaseActions dbms = new JdbcActions();
150  1 dbms.connect("test");
151   
152  1 assertTrue(dbms.executeSqlFromClasspath(SQL_FILE));
153   
154  1 ResultSet results = dbms.executeQuery("SELECT * FROM test;");
155  1 assertEquals(1, dbms.countResultSets(results));
156   
157  1 dbms.executeQuery(sql_drop);
158    }
159   
 
160  1 toggle @Test
161    void getJdbcMetaData() throws Exception {
162  1 LOGGER.log("TEST CASE: getJdbcMetaData", LogLevel.DEBUG);
163   
164  1 DatabaseActions dbms = new JdbcActions();
165  1 dbms.connect("test");
166  1 JdbcConnection metaData = dbms.getJdbcMetaData();
167  1 LOGGER.log(metaData.toString(), LogLevel.DEBUG);
168  1 assertNotNull(metaData);
169    }
170   
 
171  1 toggle @Test
172    void failGetJdbcMetaData() throws Exception {
173  1 LOGGER.log("TEST CASE: failGetJdbcMetaData", LogLevel.DEBUG);
174   
175  1 DatabaseActions dbms = new JdbcActions();
176  1 assertThrows(Exception.class, () -> {
177  1 dbms.getJdbcMetaData();
178    });
179    }
180    }