Skip to content

Commit b36942f

Browse files
authored
Merge pull request #85 from zalando-stups/fix-it-tests
Fix integration test
2 parents 4337559 + 1c58a0a commit b36942f

File tree

1 file changed

+55
-48
lines changed

1 file changed

+55
-48
lines changed

src/test/java/org/zalando/typemapper/postgres/PgSerializerToDatabaseTestIT.java

Lines changed: 55 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
//J-
22
package org.zalando.typemapper.postgres;
33

4+
import org.junit.After;
5+
import org.junit.Before;
6+
import org.junit.Test;
7+
import org.junit.runner.RunWith;
8+
import org.junit.runners.Parameterized;
9+
import org.junit.runners.Parameterized.Parameters;
10+
import org.springframework.jdbc.core.JdbcTemplate;
11+
import org.springframework.jdbc.datasource.SingleConnectionDataSource;
12+
import org.springframework.test.context.TestContextManager;
413
import org.zalando.typemapper.AbstractTest;
514
import org.zalando.typemapper.namedresult.results.ClassWithEnum;
615
import org.zalando.typemapper.namedresult.results.ClassWithPredefinedTransformer;
@@ -13,58 +22,33 @@
1322
import org.zalando.typemapper.namedresult.results.InheritedClassWithPrimitivesDeprecated;
1423
import org.zalando.typemapper.namedresult.transformer.Hans;
1524

16-
17-
import org.junit.After;
18-
import org.junit.Before;
19-
import org.junit.Test;
20-
import org.junit.runner.RunWith;
21-
import org.junit.runners.Parameterized;
22-
import org.junit.runners.Parameterized.Parameters;
23-
import org.springframework.jdbc.core.JdbcTemplate;
24-
import org.springframework.jdbc.datasource.SingleConnectionDataSource;
25-
import org.springframework.test.context.TestContextManager;
26-
2725
import java.sql.SQLException;
2826
import java.sql.Types;
29-
import java.util.*;
30-
31-
32-
import static org.zalando.typemapper.postgres.PgArray.ARRAY;
33-
import static org.zalando.typemapper.postgres.PgRow.ROW;
34-
27+
import java.time.OffsetDateTime;
28+
import java.time.ZoneId;
29+
import java.time.format.DateTimeFormatter;
30+
import java.util.Arrays;
31+
import java.util.Collection;
32+
import java.util.Date;
33+
import java.util.HashMap;
34+
import java.util.Map;
3535

3636
import static org.hamcrest.CoreMatchers.is;
3737
import static org.hamcrest.MatcherAssert.assertThat;
38+
import static org.zalando.typemapper.postgres.PgArray.ARRAY;
39+
import static org.zalando.typemapper.postgres.PgRow.ROW;
3840

3941

4042
@RunWith(Parameterized.class)
4143
public class PgSerializerToDatabaseTestIT extends AbstractTest {
4244

43-
private TestContextManager testContextManager;
44-
45-
@Override
46-
protected void prepareContext() throws Exception {
47-
testContextManager = new TestContextManager(getClass());
48-
testContextManager.prepareTestInstance(this);
49-
}
50-
51-
@Before
52-
public void createJdbcTemplate() {
53-
// BasicConfigurator.configure();
54-
// Logger.getRootLogger().setLevel(Level.INFO);
55-
// Logger.getLogger(org.springframework.jdbc.datasource.DataSourceUtils.class).setLevel(Level.INFO);
56-
// Logger.getLogger("org.springframework.jdbc.core.JdbcTemplate").setLevel(Level.WARN);
57-
// Logger.getLogger("org.springframework.beans").setLevel(Level.WARN);
58-
// Logger.getLogger("org.springframework.jdbc.support").setLevel(Level.WARN);
59-
60-
this.template = new JdbcTemplate(new SingleConnectionDataSource(this.connection, false));
61-
}
62-
63-
// Fields
64-
private JdbcTemplate template;
45+
private static final DateTimeFormatter TIMESTAMP_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm:ssx");
6546
private final Object objectToSerialize;
6647
private final String expectedString;
6748
private final int expectedSQLType;
49+
private TestContextManager testContextManager;
50+
// Fields
51+
private JdbcTemplate template;
6852

6953
/*
7054
* Constructor. The JUnit test runner will instantiate this class once for
@@ -161,10 +145,10 @@ public static Collection<Object[]> generateData() throws SQLException {
161145
/* 13 */
162146
{
163147
ROW(1,
164-
new ClassWithPrimitives[]{
165-
new ClassWithPrimitives(1, 100L, 'a'), new ClassWithPrimitives(2, 200L,
166-
'b')
167-
}).asPGobject("int_with_additional_type_array"),
148+
new ClassWithPrimitives[]{
149+
new ClassWithPrimitives(1, 100L, 'a'), new ClassWithPrimitives(2, 200L,
150+
'b')
151+
}).asPGobject("int_with_additional_type_array"),
168152
"(1,\"{\"\"(a,1,100)\"\",\"\"(b,2,200)\"\"}\")", Types.OTHER
169153
},
170154

@@ -188,8 +172,9 @@ public static Collection<Object[]> generateData() throws SQLException {
188172
{
189173
PgTypeHelper.asPGobject(
190174
new ClassWithSimpleTransformers(GenderCode.MALE, GenderCode.MALE,
191-
GenderCode.MALE, "path",
192-
"listElement1", "listElement2", "listElement3")),
175+
GenderCode.MALE, "path",
176+
"listElement1", "listElement2",
177+
"listElement3")),
193178
"(path,homme,0,MALE,listElement1#listElement2#listElement3)", Types.OTHER
194179
},
195180

@@ -212,10 +197,14 @@ public static Collection<Object[]> generateData() throws SQLException {
212197
},
213198

214199
/* 20 */
215-
{new Date(1354338366000L), "2012-12-01 06:06:06+01", Types.TIMESTAMP},
200+
{new Date(1354338366000L), OffsetDateTime.parse("2012-12-01T06:06:06+01:00")
201+
.atZoneSameInstant(ZoneId.systemDefault())
202+
.format(TIMESTAMP_FORMATTER), Types.TIMESTAMP},
216203

217204
/* 21 */
218-
{new Date(1349064366000L), "2012-10-01 06:06:06+02", Types.TIMESTAMP},
205+
{new Date(1349064366000L), OffsetDateTime.parse("2012-10-01T06:06:06+02:00")
206+
.atZoneSameInstant(ZoneId.systemDefault())
207+
.format(TIMESTAMP_FORMATTER), Types.TIMESTAMP},
219208

220209
/* 22 */
221210
{PgTypeHelper.asPGobject(
@@ -224,6 +213,24 @@ public static Collection<Object[]> generateData() throws SQLException {
224213
});
225214
}
226215

216+
@Override
217+
protected void prepareContext() throws Exception {
218+
testContextManager = new TestContextManager(getClass());
219+
testContextManager.prepareTestInstance(this);
220+
}
221+
222+
@Before
223+
public void createJdbcTemplate() {
224+
// BasicConfigurator.configure();
225+
// Logger.getRootLogger().setLevel(Level.INFO);
226+
// Logger.getLogger(org.springframework.jdbc.datasource.DataSourceUtils.class).setLevel(Level.INFO);
227+
// Logger.getLogger("org.springframework.jdbc.core.JdbcTemplate").setLevel(Level.WARN);
228+
// Logger.getLogger("org.springframework.beans").setLevel(Level.WARN);
229+
// Logger.getLogger("org.springframework.jdbc.support").setLevel(Level.WARN);
230+
231+
this.template = new JdbcTemplate(new SingleConnectionDataSource(this.connection, false));
232+
}
233+
227234
@Before
228235
public void createNeededTypes() throws SQLException {
229236
execute("CREATE TYPE tmp.int_duplet AS (a int, b int);");
@@ -267,7 +274,7 @@ public void dropUsedTypes() throws SQLException {
267274
@Test
268275
public void passingParametersToQueryTest() {
269276
assertThat(template.queryForObject("SELECT (?)::TEXT", new Object[]{this.objectToSerialize},
270-
new int[]{this.expectedSQLType}, String.class), is(this.expectedString));
277+
new int[]{this.expectedSQLType}, String.class), is(this.expectedString));
271278
}
272279
}
273280
//J+

0 commit comments

Comments
 (0)