- name: Run unit tests
working-directory: tests/js
run: npm test
+
+ build:
+ runs-on: ubuntu-20.04
+ needs: [test] #Building process must start after successful testing process
+
+ strategy:
+ matrix:
+ node-version: [12.x]
+
+ steps:
+ - uses: actions/checkout@v4
+ - name: Setup cache
+ id: cache-system-libraries
+ uses: actions/cache@v2
+ with:
+ path: ${{env.EM_CACHE_FOLDER}}
+ key: emsdk-${{env.EM_VERSION}}-${{ runner.os }}
+ - uses: mymindstorm/setup-emsdk@v7
+ with:
+ version: ${{env.EM_VERSION}}
+ actions-cache-folder: ${{env.EM_CACHE_FOLDER}}
+ - name: Use Node.js ${{ matrix.node-version }}
+ uses: actions/setup-node@v1
+ with:
+ node-version: ${{ matrix.node-version }}
+ - name: Build ffish.js ES6/ES2015 module
+ working-directory: src
+ run: rm -f ../tests/js/ffish.js & rm -f ../tests/js/ffish.wasm & make -f Makefile_js build es6=yes
+ - name: Upload ffish.js ES6/ES2015 module ZIP archive
+ uses: actions/upload-artifact@v4
+ with:
+ name: ffishjs-es6
+ path: tests/js/*
+ if-no-files-found: error
+ compression-level: 9
+ - name: Build ffish.js standard module
+ working-directory: src
+ run: rm -f ../tests/js/ffish.js & rm -f ../tests/js/ffish.wasm & make -f Makefile_js build
+ - name: Upload ffish.js standard module ZIP archive
+ uses: actions/upload-artifact@v4
+ with:
+ name: ffishjs-standard
+ path: tests/js/*
+ if-no-files-found: error
+ compression-level: 9