diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..3d30e39 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,35 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. +# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake +# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby + +name: Build + +on: [push, pull_request] + +permissions: + contents: read + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.2' + bundler-cache: true + - name: Setup Firefox + uses: browser-actions/setup-firefox@v1.1.0 + - name: Setup Geckodriver + uses: browser-actions/setup-geckodriver@v0.0.0 + - name: Start xvfb + run: /usr/bin/Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & + - name: Run tests + run: bundle exec rake ci + env: + DISPLAY: ":99.0" + DRIVER: "selenium" diff --git a/Gemfile.lock b/Gemfile.lock index 1373673..ce2376c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -200,6 +200,7 @@ GEM timeout (0.4.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) + webrick (1.8.1) websocket (1.2.9) websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) @@ -229,6 +230,7 @@ DEPENDENCIES teaspoon-mocha thin turbograft! + webrick BUNDLED WITH 2.4.8 diff --git a/turbograft.gemspec b/turbograft.gemspec index 3f61683..4d548ee 100644 --- a/turbograft.gemspec +++ b/turbograft.gemspec @@ -32,6 +32,7 @@ Gem::Specification.new do |spec| spec.add_development_dependency "teaspoon-mocha" spec.add_development_dependency "sqlite3" spec.add_development_dependency "thin" + spec.add_development_dependency "webrick" spec.add_development_dependency "byebug" spec.add_development_dependency "pry" spec.add_development_dependency "pry-byebug"