Skip to content

document inactive param in Button view component (#3278) #7849

document inactive param in Button view component (#3278)

document inactive param in Button view component (#3278) #7849

Workflow file for this run

name: Test
on:
pull_request:
push:
branches:
- main
permissions:
contents: write
pull-requests: write
concurrency:
group: test-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
env:
FERRUM_PROCESS_TIMEOUT: 30
jobs:
accessibility:
name: Accessibility
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.3'
bundler-cache: true
- uses: actions/setup-node@v4
with:
node-version: 16
cache: 'npm'
cache-dependency-path: |
package-lock.json
demo/package-lock.json
- name: Build
run: |
npm ci
cd demo && npm ci
- name: Test
run: bundle exec rake test:accessibility
components:
name: Components
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- rails_version: "6.1.1"
ruby_version: "3.0"
- rails_version: "7.0.3"
ruby_version: "3.0"
- rails_version: "7.1.3"
ruby_version: "3.2"
- rails_version: "7.1.3"
ruby_version: "3.3"
- rails_version: "main"
ruby_version: "3.2"
- rails_version: "main"
ruby_version: "3.3"
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
cache-version: ${{ matrix.rails_version }}-${{ matrix.ruby_version }}
- uses: actions/setup-node@v4
with:
node-version: 16
cache: 'npm'
- name: Build
run: |
npm ci
bundle config unset deployment
bundle install --jobs 4 --retry 3
env:
RUBY_VERSION: ${{ matrix.ruby_version }}
RAILS_VERSION: ${{ matrix.rails_version }}
- name: Test
run: |
bundle exec rake test:components
bundle exec rake test:coverage
env:
COVERAGE: 1
RUBY_VERSION: ${{ matrix.ruby_version }}
RAILS_VERSION: ${{ matrix.rails_version }}
lib:
name: Lib
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- rails_version: "6.1.1"
ruby_version: "3.0"
- rails_version: "7.0.3"
ruby_version: "3.0"
- rails_version: "7.1.3"
ruby_version: "3.2"
- rails_version: "7.1.3"
ruby_version: "3.3"
- rails_version: "main"
ruby_version: "3.2"
- rails_version: "main"
ruby_version: "3.3"
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
cache-version: ${{ matrix.rails_version }}-${{ matrix.ruby_version }}
- uses: actions/setup-node@v4
with:
node-version: 16
cache: 'npm'
- name: Build
run: |
npm ci
bundle config unset deployment
bundle install --jobs 4 --retry 3
env:
RUBY_VERSION: ${{ matrix.ruby_version }}
RAILS_VERSION: ${{ matrix.rails_version }}
- name: Test
run: |
bundle exec rake test:lib
bundle exec rake test:coverage
env:
COVERAGE: 1
RUBY_VERSION: ${{ matrix.ruby_version }}
RAILS_VERSION: ${{ matrix.rails_version }}
performance:
name: Performance
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- rails_version: "6.1.1"
ruby_version: "3.0"
- rails_version: "7.0.3"
ruby_version: "3.0"
- rails_version: "7.1.3"
ruby_version: "3.2"
- rails_version: "7.1.3"
ruby_version: "3.3"
- rails_version: "main"
ruby_version: "3.2"
- rails_version: "main"
ruby_version: "3.3"
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
cache-version: ${{ matrix.rails_version }}-${{ matrix.ruby_version }}
- name: Build
run: |
bundle config unset deployment
bundle install --jobs 4 --retry 3
env:
RUBY_VERSION: ${{ matrix.ruby_version }}
RAILS_VERSION: ${{ matrix.rails_version }}
- name: Test
run: |
bundle exec rake test:performance
env:
RUBY_VERSION: ${{ matrix.ruby_version }}
RAILS_VERSION: ${{ matrix.rails_version }}
system_chrome:
name: System (Chrome)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
bundler-cache: true
- uses: actions/setup-node@v4
with:
node-version: 16
cache: 'npm'
cache-dependency-path: |
package-lock.json
demo/package-lock.json
- name: Build
run: |
npm ci
cd demo && npm ci
- name: Test
run: |
USE_BROWSER=chrome bundle exec rake test:system
system_firefox:
name: System (Firefox)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
bundler-cache: true
- uses: actions/setup-node@v4
with:
node-version: 16
cache: 'npm'
cache-dependency-path: |
package-lock.json
demo/package-lock.json
- name: Build
run: |
npm ci
cd demo && npm ci
- name: Test
run: |
USE_BROWSER=firefox bundle exec rake test:system
visual:
name: Visual and Semantic Markup Regressions
if: ${{ github.event_name == 'pull_request' }}
timeout-minutes: 20
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
bundler-cache: true
- uses: actions/setup-node@v4
with:
node-version: 16
cache: 'npm'
cache-dependency-path: |
package-lock.json
demo/package-lock.json
- name: Build
run: |
npm ci
bundle install
bundle exec rake static:dump
cd demo
npm ci
bundle install
- name: Install Overmind
run: |
sudo apt-get install tmux
gem install overmind
- name: Install Playwright Browsers
run: npx playwright install --with-deps
- name: Run Playwright tests
id: playwright-run
continue-on-error: true
run: ./script/run-playwright
- id: auto-commit
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: Generating component snapshots
file_pattern: .playwright/screenshots/**/*.png .playwright/screenshots/**/*.yml
- name: "Changes detected"
if: steps.auto-commit.outputs.changes_detected == 'true'
uses: phulsechinmay/[email protected]
with:
message: |
### ⚠️ Visual or ARIA snapshot differences found
Our visual and ARIA snapshot tests found UI differences. Please review the differences by viewing the files changed tab to ensure that the changes were intentional.
[Review differences](https://github.com/primer/view_components/pull/${{ github.event.number }}/files?file-filters%5B%5D=.png&file-filters%5B%5D=.yml&show-viewed-files=false)
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMMENT_IDENTIFIER: 'visual-comparison-diff'
- uses: actions/upload-artifact@v4
with:
name: playwright-report
path: .playwright/report/
retention-days: 30
- name: Failure
if: ${{ steps.auto-commit.outputs.changes_detected == 'true' || steps.playwright-run.outcome == 'failure' }}
run: exit 1
selectors:
name: CSS coverage
runs-on: ubuntu-latest-8-cores
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
bundler-cache: true
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 16
cache: 'npm'
- name: NPM Build
run: npm ci
env:
# Disable CSS minification for tests
CI: 'false'
- name: Test CSS
run: bundle exec rake test:component_css