Skip to content

Commit

Permalink
Merge pull request #5246 from rmosolgo/simplify-system-tests
Browse files Browse the repository at this point in the history
Use Rails master for system tests
  • Loading branch information
rmosolgo authored Feb 20, 2025
2 parents 26de3c6 + 6a1aaac commit 62c885e
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 9 deletions.
21 changes: 12 additions & 9 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.4
bundler-cache: true
- run: bundle exec rake compile
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.4
bundler-cache: true
env:
BUNDLE_GEMFILE: ./spec/dummy/Gemfile
- run: bundle exec rails test:all
BUNDLE_GEMFILE: gemfiles/rails_master.gemfile
- run: bin/rails test:all
working-directory: ./spec/dummy
env:
BUNDLE_GEMFILE: ../../gemfiles/rails_master.gemfile
# Some coverage goals of these tests:
# - Test once without Rails at all
# - Test postgres, to make sure that the ActiveRecord
Expand All @@ -48,8 +45,6 @@ jobs:
ruby: 2.7 # lowest supported version
- gemfile: gemfiles/rails_7.0.gemfile
ruby: 3.1
- gemfile: gemfiles/rails_master.gemfile
ruby: 3.2
- gemfile: gemfiles/rails_7.0.gemfile
ruby: 3.2
- gemfile: gemfiles/rails_7.1.gemfile
Expand All @@ -58,17 +53,25 @@ jobs:
ruby: 3.3
graphql_reject_numbers_followed_by_names: 1
coverage: 1
redis: 1
- gemfile: gemfiles/rails_master.gemfile
ruby: 3.4
graphql_reject_numbers_followed_by_names: 1
isolation_level_fiber: 1
redis: 1
runs-on: ubuntu-latest
steps:
- run: echo BUNDLE_GEMFILE=${{ matrix.gemfile }} > $GITHUB_ENV
- run: echo GRAPHQL_REJECT_NUMBERS_FOLLOWED_BY_NAMES=1 > $GITHUB_ENV
if: ${{ !!matrix.graphql_reject_numbers_followed_by_names }}
- run: echo ISOLATION_LEVEL_FIBER=1 > $GITHUB_ENV
if: ${{ !!matrix.isolation_level_fiber }}
- uses: shogo82148/actions-setup-redis@v1
with:
redis-version: "7.x"
if: ${{ !!matrix.redis }}
- run: redis-cli ping
if: ${{ !!matrix.redis }}
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ gemfiles/*.lock
*.db
*.db-shm
*.db-wal
*.sqlite3
.byebug_history
.bundle/
vendor/
Expand Down
6 changes: 6 additions & 0 deletions gemfiles/rails_master.gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,11 @@ if RUBY_ENGINE == "ruby" # This doesn't work on truffle-ruby because there's no
end
gem "async"
gem "google-protobuf"
gem "redis"

gem 'puma'
gem 'sprockets-rails'
gem 'capybara'
gem 'selenium-webdriver'

gemspec path: "../"
32 changes: 32 additions & 0 deletions spec/dummy/config/database.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# SQLite. Versions 3.8.0 and up are supported.
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem "sqlite3"
#
default: &default
adapter: sqlite3
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000

development:
<<: *default
database: storage/development.sqlite3

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: storage/test.sqlite3


# SQLite3 write its data on the local filesystem, as such it requires
# persistent disks. If you are deploying to a managed service, you should
# make sure it provides disk persistence, as many don't.
#
# Similarly, if you deploy your application as a Docker container, you must
# ensure the database is located in a persisted volume.
production:
<<: *default
# database: path/to/persistent/storage/production.sqlite3

0 comments on commit 62c885e

Please sign in to comment.