Skip to content

Commit

Permalink
condense target test
Browse files Browse the repository at this point in the history
  • Loading branch information
bwireman committed Jul 6, 2024
1 parent 6b44aed commit 3b0cc1d
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 54 deletions.
20 changes: 4 additions & 16 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,7 @@ jobs:
otp-version: ${{ env.otp }}
gleam-version: ${{ env.gleam }}
rebar3-version: ${{ env.rebar }}
- run: gleam test --target erlang
- run: gleam run --target erlang
- run: gleam run --target erlang -- test
- run: ./scripts/assert_test.sh
- run: ./scripts/target_test.sh erlang

node:
runs-on: ubuntu-latest
Expand All @@ -58,10 +55,7 @@ jobs:
node-version: ${{ matrix.node-version }}
cache: "npm"
- run: yarn install
- run: gleam test --target javascript --runtime nodejs
- run: gleam run --target javascript --runtime nodejs
- run: gleam run --target javascript --runtime nodejs -- test
- run: ./scripts/assert_test.sh
- run: ./scripts/target_test.sh javascript nodejs

bun:
runs-on: ubuntu-latest
Expand All @@ -74,10 +68,7 @@ jobs:
rebar3-version: ${{ env.rebar }}
- uses: oven-sh/setup-bun@v1
- run: bun install
- run: gleam test --target javascript --runtime bun
- run: gleam run --target javascript --runtime bun
- run: gleam run --target javascript --runtime bun -- test
- run: ./scripts/assert_test.sh
- run: ./scripts/target_test.sh javascript bun

deno:
runs-on: ubuntu-latest
Expand All @@ -91,7 +82,4 @@ jobs:
- uses: denoland/setup-deno@v1
with:
deno-version: v1.x # Run with latest stable Deno.
- run: gleam test --target javascript --runtime deno
- run: gleam run --target javascript --runtime deno
- run: gleam run --target javascript --runtime deno -- test
- run: ./scripts/assert_test.sh
- run: ./scripts/target_test.sh javascript deno
5 changes: 0 additions & 5 deletions scripts/assert_test.sh

This file was deleted.

26 changes: 26 additions & 0 deletions scripts/target_test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
set -e
cd "$(dirname "$0")/.."

TARGET="$1"
RUNTIME="$2"
if [ "$TARGET" = "erlang" ]; then
CMD='--target erlang'
else
CMD="--target javascript --runtime $RUNTIME"
fi

function clean() {
rm -rf .test-run
rm -rf ".git/hooks/test"
}

clean
gleam test $CMD
gleam run $CMD

test -f ".git/hooks/test" || (echo "test: not found" && exit 1)
gleam run $CMD -- test

test -f ".test-run" || (echo ".test-run: not found" && exit 1)
clean
37 changes: 4 additions & 33 deletions scripts/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,44 +9,15 @@ gleam check
gleam update
gleam build
gleam format
rm -rf ".git/hooks/"
rm -rf .test-run

function assert_hooks() {
test -f ".git/hooks/pre-commit" || (echo "pre-commit: not found" && exit 1)
test -f ".git/hooks/pre-push" || (echo "pre-push: not found" && exit 1)
test -f ".git/hooks/test" || (echo "test: not found" && exit 1)
}

echo -e "${GREEN}==> erlang${NC}"
gleam test --target erlang
gleam run --target erlang
assert_hooks
gleam run --target erlang -- test
./scripts/assert_test.sh
rm -rf ".git/hooks/"
./scripts/target_test.sh erlang

echo -e "${GREEN}==> nodejs${NC}"
gleam test --target javascript --runtime nodejs
gleam run --target javascript --runtime nodejs
assert_hooks
gleam run --target javascript --runtime nodejs -- test
./scripts/assert_test.sh
rm -rf ".git/hooks/"
./scripts/target_test.sh javascript nodejs

echo -e "${GREEN}==> deno${NC}"
gleam test --target javascript --runtime deno
gleam run --target javascript --runtime deno
assert_hooks
gleam run --target javascript --runtime deno -- test
./scripts/assert_test.sh
rm -rf ".git/hooks/"
./scripts/target_test.sh javascript deno

echo -e "${GREEN}==> bun${NC}"
gleam test --target javascript --runtime bun
gleam run --target javascript --runtime bun
assert_hooks
gleam run --target javascript --runtime bun -- test
./scripts/assert_test.sh

gleam run
./scripts/target_test.sh javascript bun

0 comments on commit 3b0cc1d

Please sign in to comment.