Skip to content

run unit tests

run unit tests #157

Workflow file for this run

name: Integration Tests
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: run mysql server
run: |
docker run --name mysql_server --env MYSQL_ROOT_PASSWORD=password -p 3306:3306 -d mysql
- uses: actions/checkout@v3
- name: install zig
run: |
ZIG_VERSION=0.12.0-dev.2700+d12c8db64
wget https://ziglang.org/builds/zig-linux-x86_64-$ZIG_VERSION.tar.xz
tar xf zig-linux-x86_64-$ZIG_VERSION.tar.xz
mv zig-linux-x86_64-$ZIG_VERSION $HOME/zig-build
- name: Run Integration Tests - MySQL
run: |
$HOME/zig-build/zig build
while ! wget -qO- localhost:3306; do sleep 1; docker ps -a; done
$HOME/zig-build/zig test --dep myzql --mod root ./integration_tests/main.zig --mod myzql ./src/myzql.zig --name test
- name: Auth Test
run: |
# mysql_native_password
docker rm -f mysql_server
docker run --name mysql_server --env MYSQL_ROOT_PASSWORD=password -p 3306:3306 -d mysql \
--default-authentication-plugin=mysql_native_password
while ! wget -qO- localhost:3306; do sleep 1; docker ps -a ; done
$HOME/zig-build/zig test --dep myzql --mod root ./integration_tests/main.zig --mod myzql ./src/myzql.zig --name test --test-filter 'ping'
# sha2_password
docker rm -f mysql_server
docker run --name mysql_server --env MYSQL_ROOT_PASSWORD=password -p 3306:3306 -d mysql \
--default-authentication-plugin=sha256_password
while ! wget -qO- localhost:3306; do sleep 1; docker ps -a; done
$HOME/zig-build/zig test --dep myzql --mod root ./integration_tests/main.zig --mod myzql ./src/myzql.zig --name test --test-filter 'ping'
- name: Run Integration Tests - MariaDB
run: |
docker rm -f mysql_server
docker run --name some-mariadb --env MARIADB_ROOT_PASSWORD=password -p 3306:3306 -d mariadb
while ! wget -qO- localhost:3306; do sleep 1; docker ps -a ; done
$HOME/zig-build/zig test --dep myzql --mod root ./integration_tests/main.zig --mod myzql ./src/myzql.zig --name test