summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorChris Boesch <chrboesch@noreply.codeberg.org>2023-04-25 18:32:48 +0000
committerGitHub <noreply@github.com>2023-04-25 18:32:48 +0000
commitc43ade967796ceceb1d9fd219c8c9ace25e5b481 (patch)
tree29a3c5c1dfbc4acb3e27bb3ce7e504ad405834af
parent58e28761be8edb2847876f563bece79e023a5ab9 (diff)
parent6effa7fe842dd7fc05b6497da825b9861231b2a1 (diff)
Merge pull request #255 from perillo/improve-ci-more
Improve ci more
-rw-r--r--.github/workflows/ci.yml18
-rw-r--r--.github/workflows/eowyn.yml2
-rw-r--r--exercises/099_formatting.zig2
-rwxr-xr-xpatches/eowyn.sh16
4 files changed, 27 insertions, 11 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index ebeda5b..57e8225 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -14,7 +14,7 @@ jobs:
matrix:
zig: [ 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.10.0 ]
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
- name: Setup Zig
uses: goto-bus-stop/setup-zig@v2
@@ -23,3 +23,19 @@ jobs:
- name: Check compatibility with old Zig compilers
run: ci/compat.sh
+ test:
+ strategy:
+ matrix:
+ os: [ubuntu-latest, windows-latest, macos-latest]
+ runs-on: ${{ matrix.os }}
+ timeout-minutes: 60
+ steps:
+ - uses: actions/checkout@v3
+
+ - name: Setup Zig
+ uses: goto-bus-stop/setup-zig@v2
+ with:
+ version: master
+
+ - name: Unit Test
+ run: zig build test
diff --git a/.github/workflows/eowyn.yml b/.github/workflows/eowyn.yml
index a7133ca..cfa84a4 100644
--- a/.github/workflows/eowyn.yml
+++ b/.github/workflows/eowyn.yml
@@ -18,7 +18,7 @@ jobs:
runs-on: ${{ matrix.os }}
timeout-minutes: 60
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
- name: Setup Zig
uses: goto-bus-stop/setup-zig@v2
with:
diff --git a/exercises/099_formatting.zig b/exercises/099_formatting.zig
index 074358b..fc73338 100644
--- a/exercises/099_formatting.zig
+++ b/exercises/099_formatting.zig
@@ -82,7 +82,7 @@
//
// X | 1 2 3 4 5 ...
// ---+---+---+---+---+---+
-// 1 | 1 2 3 4 5
+// 1 | 1 2 3 4 5
//
// 2 | 2 4 6 8 10
//
diff --git a/patches/eowyn.sh b/patches/eowyn.sh
index a036acf..0c3b299 100755
--- a/patches/eowyn.sh
+++ b/patches/eowyn.sh
@@ -12,9 +12,10 @@
# using the patches in this directory and convey them
# to convalesce in the healed directory.
#
+set -e
# We check ourselves before we wreck ourselves.
-if [ ! -f 'patches/eowyn.sh' ]
+if [ ! -f patches/eowyn.sh ]
then
echo "But I must be run from the project root directory."
exit 1
@@ -27,22 +28,21 @@ mkdir -p patches/healed
for broken in exercises/*.zig
do
# Remove the dir and extension, rendering the True Name.
- true_name=$(basename $broken .zig)
+ true_name=$(basename "$broken" .zig)
patch_name="patches/patches/$true_name.patch"
-
- if [ -f $patch_name ]
+ if [ -f "$patch_name" ]
then
# Apply the bandages to the wounds, grow new limbs, let
# new life spring into the broken bodies of the fallen.
- echo Healing $true_name...
- patch --output=patches/healed/$true_name.zig $broken $patch_name
+ echo Healing "$true_name"...
+ patch --output="patches/healed/$true_name.zig" "$broken" "$patch_name"
else
- echo Cannot heal $true_name. No patch found.
+ echo Cannot heal "$true_name". No patch found.
fi
done
-# Check the healed exercises formatting.
+echo "Looking for non-conforming code formatting..."
zig fmt --check patches/healed
# Test the healed exercises. May the compiler have mercy upon us.