name: Test on: pull_request: {} push: branches: - master jobs: rubocop: env: BUNDLE_WITHOUT: release runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install Ruby ${{ matrix.ruby }} uses: ruby/setup-ruby@v1 with: ruby-version: "3.1" bundler-cache: true - name: Run Rubocop run: bundle exec rake rubocop test: runs-on: ubuntu-latest strategy: fail-fast: false matrix: include: - ruby: "2.7" - ruby: "3.0" - ruby: "3.1" coverage: "yes" - ruby: "3.2" env: COVERAGE: ${{ matrix.coverage }} BUNDLE_WITHOUT: release:rubocop steps: - uses: actions/checkout@v3 - name: Install Ruby ${{ matrix.ruby }} uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Run tests run: bundle exec rake - name: Build gem run: gem build *.gemspec tests: needs: - rubocop - test runs-on: ubuntu-latest name: Test suite steps: - run: echo Test suite completed