Browse Source

Merge pull request #255 from perillo/improve-ci-more

Improve ci more
Chris Boesch 2 years ago
parent
commit
c43ade9677
4 changed files with 27 additions and 11 deletions
  1. 17 1
      .github/workflows/ci.yml
  2. 1 1
      .github/workflows/eowyn.yml
  3. 1 1
      exercises/099_formatting.zig
  4. 8 8
      patches/eowyn.sh

+ 17 - 1
.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

+ 1 - 1
.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:

+ 1 - 1
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
 //

+ 8 - 8
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.