Skip to content
Open
Show file tree
Hide file tree
Changes from 32 commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
3565a6c
WIP
amorton Feb 17, 2026
b89dd30
WIP
amorton Feb 18, 2026
f1307d5
WIP
amorton Feb 19, 2026
716d86e
WIP
amorton Feb 22, 2026
1a14b93
WIP dynamic
amorton Feb 23, 2026
1d07e97
WIP
amorton Feb 23, 2026
5b0a8dc
WIP
amorton Feb 24, 2026
22d80e3
WIP
amorton Feb 25, 2026
0af33b1
WIP - assertion template
amorton Feb 26, 2026
bcf3271
WIP
amorton Feb 27, 2026
0d8294f
WIP structure tidy
amorton Mar 2, 2026
2507b68
missinh files
amorton Mar 2, 2026
ac60249
WIP - begin added TestURI
amorton Mar 3, 2026
4c9c239
WIP - refactor
amorton Mar 10, 2026
d93b15a
Merge branch 'main' into ajm/vectorize-tests
amorton Mar 29, 2026
2549bb9
WIP
amorton Apr 7, 2026
cb246f8
Fix #2447: add Maven plug-in for tree-based console output
tatu-at-datastax Apr 9, 2026
af07321
Downgrde surefire plugin version
tatu-at-datastax Apr 9, 2026
c80b574
theme -> UNICODE
tatu-at-datastax Apr 10, 2026
97fb510
Try to retain color codes for CI
tatu-at-datastax Apr 10, 2026
9f29d2d
WIP
amorton Apr 10, 2026
6dba266
Merge branch 'main' into ajm/vectorize-tests
amorton Apr 10, 2026
2774981
Merge remote-tracking branch 'origin/tatu/2447-tree-output-for-maven-…
amorton Apr 10, 2026
5899b83
testing GH workflow
amorton Apr 16, 2026
0e7ee9d
remove on pull dispatch
amorton Apr 16, 2026
eebce0a
put pull_request back :)
amorton Apr 16, 2026
c55db38
default env ?
amorton Apr 16, 2026
cd862ba
try again
amorton Apr 16, 2026
917ebda
Update test-bench-run.yaml
erichare Apr 16, 2026
c9b85b5
Update test-bench-run.yaml
erichare Apr 16, 2026
bb0018a
Update test-bench-run.yaml
erichare Apr 16, 2026
26c23b2
Fix the rendering of the title
erichare Apr 16, 2026
83f7ba7
reduce logging
amorton Apr 17, 2026
c9b2f72
trying
amorton Apr 17, 2026
5171de4
testing
amorton Apr 17, 2026
81177fb
simpler
amorton Apr 17, 2026
3d0378e
test
amorton Apr 17, 2026
b72f7df
test
amorton Apr 17, 2026
6062cc4
fake change
amorton Apr 17, 2026
2ad4970
put env in matrix
amorton Apr 17, 2026
ad9a508
fix
amorton Apr 17, 2026
21030b1
remove TEST env, not working
amorton Apr 17, 2026
b668362
Roll back to preexisting env usage
erichare Apr 17, 2026
6b30e0c
fixing env and reporting
amorton Apr 21, 2026
0241dfa
add failing test for checking output
amorton Apr 21, 2026
904d61f
fix reporting of failure, i think
amorton Apr 21, 2026
09cc9ad
failing test
amorton Apr 21, 2026
dc238de
Merge branch 'main' into ajm/vectorize-tests
amorton Apr 21, 2026
9f7f9ed
do not fail fast
amorton Apr 21, 2026
914933f
improve names, enable all tests
amorton Apr 21, 2026
1f3c754
fix file name
amorton Apr 21, 2026
6bd433a
enable shared auth tests
amorton Apr 21, 2026
b168ed7
increase timeout, bug fix
amorton Apr 21, 2026
e67a48d
tweak output
amorton Apr 21, 2026
393f74c
abort tests after previous failure
amorton Apr 22, 2026
0f5219f
typo fix
amorton Apr 22, 2026
6cae9b5
reporting improvements
amorton Apr 22, 2026
c624c30
checking PROD env
amorton Apr 22, 2026
04a00ff
move to dev, trying summary
amorton Apr 23, 2026
06c669b
adding test report file
amorton Apr 23, 2026
af4fcf8
push report to summary var
amorton Apr 23, 2026
bbe336f
disable jansi
amorton Apr 23, 2026
1797869
try again disable ansi
amorton Apr 23, 2026
f686575
enable all dev tests again
amorton Apr 23, 2026
aa685a3
testing with PROD again
amorton Apr 23, 2026
45318f9
sanitize report name
amorton Apr 23, 2026
d8686b1
improve report with sections
amorton Apr 23, 2026
f6bcff4
summary report tweaks
amorton Apr 23, 2026
1dbe28c
improve summary report
amorton Apr 23, 2026
d66c57c
add node code, reduce tests for now
amorton Apr 23, 2026
36851af
added failure report section
amorton Apr 23, 2026
444fd51
tweak failure report
amorton Apr 23, 2026
06d3b53
improve failure report
amorton Apr 23, 2026
4bc5637
test prod
amorton Apr 23, 2026
e26d357
poke
amorton Apr 24, 2026
83c0356
checking header only, on prod
amorton Apr 30, 2026
438d6df
testing basic retry
amorton Apr 30, 2026
b59f551
bug in getting body string
amorton Apr 30, 2026
6b517c9
improve retry
amorton Apr 30, 2026
cf26885
fix bad loop
amorton Apr 30, 2026
9633193
trying different jitter
amorton Apr 30, 2026
0d7e69a
more tests
amorton Apr 30, 2026
a9c03ac
testing with new keys
amorton May 3, 2026
aa1ce3a
refactoring for commit
amorton May 3, 2026
dd704a9
reduce parallel to avoid jina concurrency error
amorton May 4, 2026
9ed62f5
refactor and disable jina
amorton May 4, 2026
041b6f4
back to parallel tests
amorton May 4, 2026
e082e0d
TestPlanLifecycle comments
amorton May 7, 2026
1238cff
code tidy
amorton May 7, 2026
0e17202
code tidy
amorton May 7, 2026
423382a
code tidy
amorton May 10, 2026
e121f85
Code tidy
amorton May 11, 2026
efe736a
Code tidy
amorton May 11, 2026
f1142fd
Merge branch 'main' into ajm/vectorize-tests
amorton Jun 9, 2026
355b6be
WIP - running test locally
amorton Jun 9, 2026
4e6a2dd
switch to DEV
amorton Jun 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/continuous-integration.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ jobs:

- name: Build & Test
run: |
./mvnw -B -ntp clean test
./mvnw -B -ntp -Dstyle.color=always clean test

# Publish baseline coverage for main branch (for future PR comparisons)
- name: Publish baseline coverage
Expand Down Expand Up @@ -382,7 +382,7 @@ jobs:
# -Dquarkus.package.write-transformed-bytecode-to-build-output=true is required for JaCoCo IT coverage
# Note: Container image build is disabled for coverage (JaCoCo only works with JAR artifacts)
run: |
./mvnw -B -ntp clean verify -DskipUnitTests -DRERANKING_CONFIG_RESOURCE=test-reranking-providers-config.yaml -DEMBEDDING_CONFIG_RESOURCE=test-embedding-providers-config.yaml -Drun-create-index-parallel=true -Pjacoco-it -Dquarkus.package.write-transformed-bytecode-to-build-output=true ${{ matrix.profile }}
./mvnw -B -ntp clean verify -Dstyle.color=always -DskipUnitTests -DRERANKING_CONFIG_RESOURCE=test-reranking-providers-config.yaml -DEMBEDDING_CONFIG_RESOURCE=test-embedding-providers-config.yaml -Drun-create-index-parallel=true -Pjacoco-it -Dquarkus.package.write-transformed-bytecode-to-build-output=true ${{ matrix.profile }}

# Publish baseline IT coverage for main branch (for future PR comparisons)
- name: Publish baseline IT coverage
Expand Down
110 changes: 110 additions & 0 deletions .github/workflows/test-bench-run.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
name: API Test Bench Run

on:
workflow_dispatch:
inputs:
environment:
description: 'Environment to test against'
required: true
type: environment
pull_request:

# needed when a workflow wants to use OIDC (OpenID Connect) to authenticate to cloud
permissions:
id-token: write
contents: write
packages: write
pull-requests: write

# global env vars, available in all jobs and steps
env:
MAVEN_OPTS: '-Xmx4g'
DS_ARTIFACTORY_USERNAME: ${{ secrets.DS_ARTIFACTORY_USERNAME }}
DS_ARTIFACTORY_PASSWORD: ${{ secrets.DS_ARTIFACTORY_PASSWORD }}

jobs:
setup:
runs-on: ubuntu-latest
environment: ${{ github.event.inputs.environment || 'DEV' }}

outputs:
matrix: ${{ steps.set-matrix.outputs.TEST_TARGETS }}
steps:
- id: set-matrix
env:
TEST_TARGETS: ${{ vars.TEST_TARGETS }}
run: |
{
echo "TEST_TARGETS<<EOF"
echo "$TEST_TARGETS"
echo "EOF"
} >> "$GITHUB_OUTPUT"

# runs unit tests
build:
name: Unit tests (${{ matrix.name }})
needs: setup
runs-on: ubuntu-latest
environment: ${{ github.event.inputs.environment || 'DEV' }}

# max run time 12 minutes
timeout-minutes: 12

strategy:
matrix:
include: ${{ fromJson(needs.setup.outputs.matrix) }}

steps:
- uses: actions/checkout@v6

- name: Set up JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
cache: maven

- name: Setup Maven
run: |
mkdir -p ~/.m2
cat <<EOF > ~/.m2/settings.xml
<settings>
<servers>
<server>
<id>stargate-central</id>
<username>${DS_ARTIFACTORY_USERNAME}</username>
<password>${DS_ARTIFACTORY_PASSWORD}</password>
</server>
<server>
<id>stargate-snapshots</id>
<username>${DS_ARTIFACTORY_USERNAME}</username>
<password>${DS_ARTIFACTORY_PASSWORD}</password>
</server>
<server>
<id>artifactory</id>
<username>${DS_ARTIFACTORY_USERNAME}</username>
<password>${DS_ARTIFACTORY_PASSWORD}</password>
</server>
<server>
<id>artifactory-snapshots</id>
<username>${DS_ARTIFACTORY_USERNAME}</username>
<password>${DS_ARTIFACTORY_PASSWORD}</password>
</server>
<server>
<id>artifactory-releases</id>
<username>${DS_ARTIFACTORY_USERNAME}</username>
<password>${DS_ARTIFACTORY_PASSWORD}</password>
</server>
</servers>
</settings>
EOF
- name: Build & Test
env:
TEST_PLAN_FILE: classpath:integration-tests/test-plans/vectorize-astra-test-plan.yaml
Token: ${{ secrets[matrix.token_secret] }}
TARGET_NAME: ${{ matrix.name }}
ENDPOINT: ${{ matrix.endpoint }}
openAi_KEY: ${{ secrets.OPEN_AI_KEY }}

run: |
./mvnw -B -ntp verify -Dfmt.skip -DskipUnitTests -Dit.test=TestBenchTests
38 changes: 37 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,11 @@
<!-- Testing -->
<skipTests>false</skipTests>
<skipUnitTests>${skipTests}</skipUnitTests>
<surefire-plugin.version>3.5.4</surefire-plugin.version>
<!-- 09-Apr-2026, tatu: Wrt [data-api#2447] need to use not-latest
(specifically, 3.5.3; latest being 3.5.5)
See: https://github.com/fabriciorby/maven-surefire-junit5-tree-reporter?tab=readme-ov-file#important
-->
<surefire-plugin.version>3.5.3</surefire-plugin.version>
<skipITs>false</skipITs>
</properties>
<dependencyManagement>
Expand Down Expand Up @@ -98,6 +102,11 @@
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-arc</artifactId>
Expand Down Expand Up @@ -341,6 +350,18 @@
<artifactId>quarkus-mcp-server-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire-plugin.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>me.fabriciorby</groupId>
<artifactId>maven-surefire-junit5-tree-reporter</artifactId>
<version>1.5.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
Expand All @@ -356,13 +377,28 @@
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire-plugin.version}</version>
<dependencies>
<dependency>
<groupId>me.fabriciorby</groupId>
<artifactId>maven-surefire-junit5-tree-reporter</artifactId>
<version>1.5.1</version>
</dependency>
</dependencies>
<configuration>
<!-- 17-Oct-2025, tatu: agent settings needed to get rid of "inline mock" warning by Mockito;
leading to duplication of "mockito.version".
See: https://github.com/stargate/data-api/pull/2233
-->
<!-- 02-Dec-2025, tatu: [data-api#2270] Use @{argLine} to preserve JaCoCo agent config -->
<argLine>@{argLine} -Xmx4g -javaagent:${settings.localRepository}/org/mockito/mockito-core/${mockito.version}/mockito-core-${mockito.version}.jar</argLine>
<!-- 09-Apr-2026, tatu: Try to prettify output -->
<reportFormat>plain</reportFormat>
<consoleOutputReporter>
<disable>true</disable>
</consoleOutputReporter>
<statelessTestsetInfoReporter implementation="org.apache.maven.plugin.surefire.extensions.junit5.JUnit5StatelessTestsetInfoTreeReporter">
<theme>UNICODE</theme>
</statelessTestsetInfoReporter>
<systemPropertyVariables>
<java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
<maven.home>${maven.home}</maven.home>
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ stargate:

database:
limits:
max-collections: 5
max-collections: 15

debug:
enabled: false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ public class ResponseAssertions {
FieldMatcher.errors(hasErrors));

final String msg =
"%s: Response fields %s:%s, %s:%s, %s:%s"
"%s: %s:%s, %s:%s, %s:%s"
.formatted(
message,
Presence.REQUIRED,
Expand Down
Loading
Loading