Skip to content

Commit

Permalink
Added postgres test container
Browse files Browse the repository at this point in the history
  • Loading branch information
parj-hsbc committed Aug 11, 2024
1 parent d9ead23 commit 769e87c
Show file tree
Hide file tree
Showing 2 changed files with 75 additions and 3 deletions.
28 changes: 25 additions & 3 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -52,14 +52,18 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<testcontainers.version>1.20.1</testcontainers.version>
<junit.version>5.10.2</junit.version>
<h2.version>2.2.224</h2.version>
<postgres.version>42.7.3</postgres.version>
</properties>

<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>5.10.2</version>
<version>${junit.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
Expand All @@ -78,7 +82,25 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>2.2.224</version>
<version>${h2.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>postgresql</artifactId>
<version>${testcontainers.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>junit-jupiter</artifactId>
<version>${testcontainers.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>${postgres.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
Expand Down Expand Up @@ -306,4 +328,4 @@
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
</project>
</project>
50 changes: 50 additions & 0 deletions src/test/java/com/hsbc/engineering/PostgresConnectionTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package com.hsbc.engineering;

import static org.junit.jupiter.api.Assertions.assertTrue;

import java.util.Map;

import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.testcontainers.containers.PostgreSQLContainer;
import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers;

@Testcontainers
public class PostgresConnectionTest {
final String user = "hello";
final String password = "moo";
final String database = "foo";

private Map<String, String> getConnectionMap() {
Map<String, String> args = Map.of(
Arguments.CLASS_NAME, "org.postgresql.Driver",
Arguments.USER, user,
Arguments.PWD, password,
Arguments.URL, pSqlContainer.getJdbcUrl(),
Arguments.SQL, "SELECT 2");

return args;
}

@Container
private PostgreSQLContainer pSqlContainer = new PostgreSQLContainer<>("postgres:16")
.withDatabaseName(database)
.withUsername(user)
.withPassword(password);

@Test
void checkOK() {
assertTrue(pSqlContainer.isRunning());
}

@Test
void mainFunctionTest() {
Assertions.assertDoesNotThrow(() -> JDBCInquirer.runSimpleConnectionTest(getConnectionMap()));
}

@Test
void perfFunctionTest() {
Assertions.assertDoesNotThrow(() -> JDBCInquirer.timeExtractionTest(getConnectionMap()));
}
}

0 comments on commit 769e87c

Please sign in to comment.