Rails 8.0 compatibility #127
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Unit tests | |
on: | |
push: | |
branches: [main, next] | |
pull_request: | |
branches: [main, next] | |
jobs: | |
# Ruby unit tests | |
rspec: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
ruby: ["2.7", "3.0", "3.1", "3.2", "3.3"] | |
gemfile: [ | |
dev/gemfiles/rails-7.0.x.gemfile, | |
dev/gemfiles/rails-7.1.x.gemfile, | |
Gemfile | |
] | |
exclude: | |
# Exclude rubies < 3.1 for ActiveModel ~> 7.2 | |
- ruby: "2.7" | |
gemfile: dev/gemfiles/rails-7.2.x.gemfile | |
- ruby: "3.0" | |
gemfile: dev/gemfiles/rails-7.2.x.gemfile | |
# Exclude rubies < 3.2 for ActiveModel ~> 8.0 | |
- ruby: "2.7" | |
gemfile: Gemfile | |
- ruby: "3.0" | |
gemfile: Gemfile | |
- ruby: "3.1" | |
gemfile: Gemfile | |
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps | |
BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Set up Ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: ${{ matrix.ruby }} | |
bundler-cache: true | |
- name: Prepare test database | |
run: "cd spec/dummy && bundle exec rake db:test:prepare && cd -" | |
- name: Run tests | |
run: bundle exec rspec | |
# JavaScript unit tests | |
jest: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Set up NodeJS | |
uses: actions/setup-node@v3 | |
with: | |
node-version: lts/* | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install | |
- name: Run tests | |
run: yarn run test |