Skip to content
This repository was archived by the owner on Mar 23, 2026. It is now read-only.

Commit 7882f56

Browse files
committed
chore(jdbc): standalone jar to run driver-agnostic tests
1 parent 66addc3 commit 7882f56

5 files changed

Lines changed: 2833 additions & 2472 deletions

File tree

google-cloud-bigquery-jdbc/Makefile

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,4 +127,25 @@ docker-integration-test: .check-env
127127

128128
docker-coverage:
129129
$(MAKE) .docker-run args="make unit-test-coverage"
130-
$(MAKE) .docker-run args="make full-coverage"
130+
$(MAKE) .docker-run args="make full-coverage"
131+
132+
# Standalone Tests Commands
133+
DRIVER_JAR ?= target/google-cloud-bigquery-jdbc-0.4.0.jar
134+
STANDALONE_JAR = target-it/google-cloud-bigquery-jdbc-it-0.4.0-standalone.jar
135+
136+
build-standalone-tests:
137+
mvn clean install -DskipTests
138+
mvn -f pom-it.xml clean package
139+
140+
run-standalone-tests: .check-env
141+
@if [ ! -f "$(STANDALONE_JAR)" ]; then \
142+
echo "Standalone test JAR not found. Run 'make build-standalone-tests' first."; \
143+
exit 1; \
144+
fi
145+
@if [ ! -f "$(DRIVER_JAR)" ]; then \
146+
echo "Driver JAR not found at $(DRIVER_JAR). Provide it using DRIVER_JAR=/path/to/driver.jar make run-standalone-tests"; \
147+
exit 1; \
148+
fi
149+
@echo "Running standalone tests with driver: $(DRIVER_JAR)"
150+
java -cp "$(STANDALONE_JAR):$(DRIVER_JAR)" \
151+
org.junit.runner.JUnitCore com.google.cloud.bigquery.jdbc.it.ITDriverAgnosticTest
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3+
<modelVersion>4.0.0</modelVersion>
4+
<parent>
5+
<groupId>com.google.cloud</groupId>
6+
<artifactId>google-cloud-bigquery-parent</artifactId>
7+
<version>2.60.0</version>
8+
<relativePath>../pom.xml</relativePath>
9+
</parent>
10+
11+
<groupId>com.google.cloud</groupId>
12+
<artifactId>google-cloud-bigquery-jdbc-it</artifactId>
13+
<version>0.4.0</version>
14+
<name>BigQuery JDBC IT Assembly</name>
15+
<packaging>pom</packaging>
16+
17+
<properties>
18+
<animal.sniffer.skip>true</animal.sniffer.skip>
19+
<checkstyle.skip>true</checkstyle.skip>
20+
<enforcer.skip>true</enforcer.skip>
21+
</properties>
22+
23+
<dependencies>
24+
<dependency>
25+
<groupId>com.google.cloud</groupId>
26+
<artifactId>google-cloud-bigquery-jdbc</artifactId>
27+
<version>0.4.0</version>
28+
<type>test-jar</type>
29+
<scope>test</scope>
30+
</dependency>
31+
<dependency>
32+
<groupId>com.google.cloud</groupId>
33+
<artifactId>google-cloud-bigquery-jdbc</artifactId>
34+
<version>0.4.0</version>
35+
<scope>test</scope>
36+
</dependency>
37+
<dependency>
38+
<groupId>com.google.cloud</groupId>
39+
<artifactId>google-cloud-bigquery</artifactId>
40+
<scope>test</scope>
41+
</dependency>
42+
<dependency>
43+
<groupId>com.google.cloud</groupId>
44+
<artifactId>google-cloud-bigquerystorage</artifactId>
45+
<scope>test</scope>
46+
</dependency>
47+
<dependency>
48+
<groupId>junit</groupId>
49+
<artifactId>junit</artifactId>
50+
<version>4.13.2</version>
51+
<scope>test</scope>
52+
</dependency>
53+
<dependency>
54+
<groupId>com.google.truth</groupId>
55+
<artifactId>truth</artifactId>
56+
<version>1.1.3</version>
57+
<scope>test</scope>
58+
</dependency>
59+
<dependency>
60+
<groupId>org.mockito</groupId>
61+
<artifactId>mockito-core</artifactId>
62+
<version>4.11.0</version>
63+
<scope>test</scope>
64+
</dependency>
65+
</dependencies>
66+
67+
<build>
68+
<directory>target-it</directory>
69+
<plugins>
70+
<plugin>
71+
<groupId>org.apache.maven.plugins</groupId>
72+
<artifactId>maven-assembly-plugin</artifactId>
73+
<version>3.6.0</version>
74+
<executions>
75+
<execution>
76+
<id>make-test-assembly</id>
77+
<phase>package</phase>
78+
<goals>
79+
<goal>single</goal>
80+
</goals>
81+
<configuration>
82+
<descriptors>
83+
<descriptor>src/assembly/test-assembly.xml</descriptor>
84+
</descriptors>
85+
</configuration>
86+
</execution>
87+
</executions>
88+
</plugin>
89+
</plugins>
90+
</build>
91+
</project>
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.1.1"
2+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.1.1 http://maven.apache.org/xsd/assembly-2.1.1.xsd">
4+
<id>standalone</id>
5+
<formats>
6+
<format>jar</format>
7+
</formats>
8+
<includeBaseDirectory>false</includeBaseDirectory>
9+
10+
<dependencySets>
11+
<dependencySet>
12+
<outputDirectory>/</outputDirectory>
13+
<useProjectArtifact>false</useProjectArtifact>
14+
<unpack>true</unpack>
15+
<scope>test</scope>
16+
<excludes>
17+
<exclude>com.google.cloud:google-cloud-bigquery-jdbc:jar</exclude>
18+
</excludes>
19+
<unpackOptions>
20+
<excludes>
21+
<exclude>META-INF/*.SF</exclude>
22+
<exclude>META-INF/*.DSA</exclude>
23+
<exclude>META-INF/*.RSA</exclude>
24+
<exclude>META-INF/*.MF</exclude>
25+
</excludes>
26+
</unpackOptions>
27+
</dependencySet>
28+
</dependencySets>
29+
</assembly>

0 commit comments

Comments
 (0)