Skip to content

Tests

Tests #12

Workflow file for this run

name: Tests
on:
workflow_dispatch:
jobs:
go-tests:
name: Test Pre-Built Libs
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
strategy:
matrix:
include:
- os: "macos-13"
dir: "darwin-amd64"
- os: "macos-14"
dir: "darwin-arm64"
- os: "ubuntu-latest"
dir: "linux-amd64"
- os: "ubuntu-24.04-arm"
dir: "linux-arm64"
- os: "windows-latest"
dir: "windows-amd64"
fail-fast: false
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Test ${{ matrix.dir }}
run: |
cd ${{ matrix.dir }}
go test
dynamic-lib-tests:
name: Test Dynamic Libs
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
strategy:
matrix:
include:
- os: "macos-13"
filename: "libduckdb-osx-universal"
filepath: "DYLD_LIBRARY_PATH"
- os: "macos-14"
filename: "libduckdb-osx-universal"
filepath: "DYLD_LIBRARY_PATH"
- os: "ubuntu-latest"
filename: "libduckdb-linux-amd64"
filepath: "LD_LIBRARY_PATH"
- os: "ubuntu-24.04-arm"
filename: "libduckdb-linux-aarch64"
filepath: "LD_LIBRARY_PATH"
fail-fast: false
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Test ${{ matrix.filename }}
run: |
make test.dynamic.lib FILENAME=${{ matrix.filename }}
CGO_ENABLED=1 CGO_LDFLAGS="-lduckdb -L${SRCDIR}dynamic-dir/" ${{ matrix.filepath }}=${SRCDIR}dynamic-dir/ go test
static-lib-tests:
name: Test Static Libs
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
strategy:
matrix:
include:
- os: "macos-13"
dir: "darwin-amd64"
flags: "-lduckdb -lc++"
- os: "macos-14"
dir: "darwin-arm64"
flags: "-lduckdb -lc++"
- os: "ubuntu-latest"
dir: "linux-amd64"
flags: "-lcore -lcorefunctions -lparquet -licu -lstdc++ -lm -ldl"
- os: "ubuntu-24.04-arm"
dir: "linux-arm64"
flags: "-lcore -lcorefunctions -lparquet -licu -lstdc++ -lm -ldl"
fail-fast: false
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Test ${{ matrix.dir }}
run: |
CGO_ENABLED=1 CPPFLAGS="-DDUCKDB_STATIC_BUILD" CGO_LDFLAGS="${{ matrix.flags }} -L${SRCDIR}${{ matrix.dir }}/libs" go test