Skip to content

Commit de9fae5

Browse files
author
Paultagoras
committed
Update DataTypeTests.java
1 parent 48092d8 commit de9fae5

File tree

1 file changed

+14
-39
lines changed

1 file changed

+14
-39
lines changed

jdbc-v2/src/test/java/com/clickhouse/jdbc/DataTypeTests.java

Lines changed: 14 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -506,50 +506,25 @@ public void testMapTypesSimpleStatement() throws SQLException {
506506
Random rand = new Random(seed);
507507
log.info("Random seed was: {}", seed);
508508

509-
int mapSize = rand.nextInt(10);
510-
String[] keys = new String[mapSize];
511-
int[] values = new int[mapSize];
509+
int mapSize = rand.nextInt(100);
510+
Map<String, Integer> integerMap = new java.util.HashMap<>(mapSize);
512511
for (int i = 0; i < mapSize; i++) {
513-
keys[i] = "key" + i;
514-
values[i] = rand.nextInt(256) - 128;
512+
integerMap.put("key" + i, rand.nextInt(256) - 128);
515513
}
516514

517-
String[] keysstr = new String[mapSize];
518-
String[] valuesstr = new String[mapSize];
515+
Map<String, String> stringMap = new java.util.HashMap<>(mapSize);
519516
for (int i = 0; i < mapSize; i++) {
520-
keysstr[i] = "key" + i;
521-
valuesstr[i] = "string" + rand.nextInt(1000);
517+
stringMap.put("key" + i, "string" + rand.nextInt(1000));
522518
}
523519

524520
// Insert random (valid) values
525-
StringBuilder sb = new StringBuilder();
526-
sb.append("INSERT INTO test_maps VALUES ( 1, ");
527-
sb.append("{");
528-
for (int i = 0; i < mapSize; i++) {
529-
if (i > 0) {
530-
sb.append(", ");
531-
}
532-
sb.append("'");
533-
sb.append(keys[i]);
534-
sb.append("': ");
535-
sb.append(values[i]);
536-
}
537-
sb.append("}, ");
538-
sb.append("{");
539-
for (int i = 0; i < mapSize; i++) {
540-
if (i > 0) {
541-
sb.append(", ");
521+
try (Connection conn = getConnection()) {
522+
try (PreparedStatement stmt = conn.prepareStatement("INSERT INTO test_maps VALUES ( 1, ?, ? )")) {
523+
stmt.setObject(1, integerMap);
524+
stmt.setObject(2, stringMap);
525+
stmt.executeUpdate();
542526
}
543-
sb.append("'");
544-
sb.append(keysstr[i]);
545-
sb.append("': '");
546-
sb.append(valuesstr[i]);
547-
sb.append("'");
548527
}
549-
sb.append("}");
550-
sb.append(")");
551-
String sql = sb.toString();
552-
insertData(sql);
553528

554529
// Check the results
555530
try (Connection conn = getConnection()) {
@@ -558,14 +533,14 @@ public void testMapTypesSimpleStatement() throws SQLException {
558533
assertTrue(rs.next());
559534
Map<Object, Object> mapResult = (Map<Object, Object>) rs.getObject("map");
560535
assertEquals(mapResult.size(), mapSize);
561-
for (int i = 0; i < mapSize; i++) {
562-
assertEquals(String.valueOf(mapResult.get(keys[i])), String.valueOf(values[i]));
536+
for (String key: integerMap.keySet()) {
537+
assertEquals(String.valueOf(mapResult.get(key)), String.valueOf(integerMap.get(key)));
563538
}
564539

565540
Map<Object, Object> mapstrResult = (Map<Object, Object>) rs.getObject("mapstr");
566541
assertEquals(mapstrResult.size(), mapSize);
567-
for (int i = 0; i < mapSize; i++) {
568-
assertEquals(mapstrResult.get(keysstr[i]), valuesstr[i]);
542+
for (String key: stringMap.keySet()) {
543+
assertEquals(String.valueOf(mapstrResult.get(key)), String.valueOf(stringMap.get(key)));
569544
}
570545
}
571546
}

0 commit comments

Comments
 (0)