diff --git a/.github/workflows/linux-build-on-release.yml b/.github/workflows/linux-build-on-release.yml index cedea83..e0721c2 100644 --- a/.github/workflows/linux-build-on-release.yml +++ b/.github/workflows/linux-build-on-release.yml @@ -1,4 +1,4 @@ -name: Build Wakapi on Linux +name: Linux on: push: @@ -10,7 +10,7 @@ on: jobs: build-and-release: - name: Build + name: Linux - Build, Test & Release runs-on: ubuntu-latest steps: @@ -24,8 +24,15 @@ jobs: uses: actions/checkout@v2 - name: Get dependencies + run: go get + + - name: Unit Tests + run: go test ./... -run ./... + + - name: API Tests run: | - go get + npm -g install newman + ./testing/run_api_tests.sh - name: Build run: GO111MODULE=on go build -v . diff --git a/.github/workflows/win-build-on-release.yml b/.github/workflows/win-build-on-release.yml index a35cdc3..ce0efda 100644 --- a/.github/workflows/win-build-on-release.yml +++ b/.github/workflows/win-build-on-release.yml @@ -1,4 +1,4 @@ -name: Build Wakapi on Windows +name: Windows on: push: @@ -10,7 +10,7 @@ on: jobs: build-and-release: - name: Build + name: Windows - Build & Release runs-on: windows-latest steps: diff --git a/README.md b/README.md index ded31ea..73f2639 100644 --- a/README.md +++ b/README.md @@ -306,10 +306,7 @@ To get a predictable environment, tests are run against a fresh and clean Wakapi # 1. sqlite (cli) $ sudo apt install sqlite # Fedora: sudo dnf install sqlite -# 2. screen -$ sudo apt install screen # Fedora: sudo dnf install screen - -# 3. newman +# 2. newman $ npm install -g newman ``` diff --git a/testing/run_api_tests.sh b/testing/run_api_tests.sh index d78c701..d5a47a0 100755 --- a/testing/run_api_tests.sh +++ b/testing/run_api_tests.sh @@ -20,7 +20,8 @@ echo "Importing seed data ..." sqlite3 wakapi_testing.db < data.sql echo "Running Wakapi testing instance in background ..." -screen -S wakapi_testing -dm bash -c "../wakapi -config config.testing.yml" +../wakapi -config config.testing.yml & +pid=$! echo "Waiting for Wakapi to come up ..." until $(curl --output /dev/null --silent --get --fail http://localhost:3000/api/health); do @@ -34,7 +35,7 @@ echo "Running test collection ..." newman run "Wakapi API Tests.postman_collection.json" echo "Shutting down Wakapi ..." -screen -S wakapi_testing -X quit +kill -TERM $pid echo "Deleting database ..." rm wakapi_testing.db \ No newline at end of file