diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 00000000000..f8114f84f7d --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,58 @@ +name: Grunt tests + +on: + push: + branches: + - '*' + pull_request: + types: + - opened + - edited + - reopened + - synchronize + +jobs: + grunt: + name: Grunt based tests with Node.js ${{ matrix.node-version }} + + runs-on: ubuntu-latest + strategy: + matrix: + node-version: [12.x, 14.x] + + steps: + - uses: actions/checkout@v2 + + - uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + + - name: Get npm cache directory + id: npm-cache-dir + run: | + echo "::set-output name=dir::$(npm config get cache)" + + - name: Cache npm dependencies + uses: actions/cache@v2 + with: + path: ${{ steps.npm-cache-dir.outputs.dir }} + key: ${{ runner.os }}-node-${{ matrix.node-version }}-npm-${{ hashFiles('**/package.json') }} + restore-keys: | + ${{ runner.os }}-node-${{ matrix.node-version }}-npm- + ${{ runner.os }}-node-${{ matrix.node-version }}- + ${{ runner.os }}-node- + ${{ runner.os }}- + + - name: Install npm dependencies + run: npm install + + - name: Run lint + run: node_modules/.bin/grunt lint + + - name: Run RequireJS + run: node_modules/.bin/grunt requirejs + + - name: Run Qunit + run: node_modules/.bin/grunt test + +