Merge pull request #10363 from colinux/simplecov
Tech: active le code coverage avec simplecov & codecov
This commit is contained in:
commit
c1d6c94df7
6 changed files with 62 additions and 0 deletions
15
.github/workflows/ci.yml
vendored
15
.github/workflows/ci.yml
vendored
|
@ -51,6 +51,11 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
bun run test
|
bun run test
|
||||||
|
|
||||||
|
- name: Upload coverage to Codecov
|
||||||
|
uses: codecov/codecov-action@v4
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
|
||||||
unit_tests:
|
unit_tests:
|
||||||
name: Unit tests
|
name: Unit tests
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
@ -100,6 +105,11 @@ jobs:
|
||||||
name: rspec-results-${{ github.job }}-${{ strategy.job-index }}
|
name: rspec-results-${{ github.job }}-${{ strategy.job-index }}
|
||||||
path: tmp/rspec_${{ github.job }}_${{ strategy.job-index }}.junit.xml
|
path: tmp/rspec_${{ github.job }}_${{ strategy.job-index }}.junit.xml
|
||||||
|
|
||||||
|
- name: Upload coverage to Codecov
|
||||||
|
uses: codecov/codecov-action@v4
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
|
||||||
system_tests:
|
system_tests:
|
||||||
name: System tests
|
name: System tests
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
@ -144,6 +154,11 @@ jobs:
|
||||||
name: rspec-results-${{ github.job }}-${{ strategy.job-index }}
|
name: rspec-results-${{ github.job }}-${{ strategy.job-index }}
|
||||||
path: tmp/rspec_${{ github.job }}_${{ strategy.job-index }}.junit.xml
|
path: tmp/rspec_${{ github.job }}_${{ strategy.job-index }}.junit.xml
|
||||||
|
|
||||||
|
- name: Upload coverage to Codecov
|
||||||
|
uses: codecov/codecov-action@v4
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
|
||||||
save_test_reports:
|
save_test_reports:
|
||||||
name: Save test reports
|
name: Save test reports
|
||||||
needs: [unit_tests, system_tests]
|
needs: [unit_tests, system_tests]
|
||||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -29,6 +29,7 @@ yarn-debug.log*
|
||||||
/public/assets
|
/public/assets
|
||||||
/spec/support/spec_config.local.rb
|
/spec/support/spec_config.local.rb
|
||||||
/config/initializers/config.local.rb
|
/config/initializers/config.local.rb
|
||||||
|
/coverage
|
||||||
|
|
||||||
# Local Netlify folder
|
# Local Netlify folder
|
||||||
.netlify
|
.netlify
|
||||||
|
|
28
.simplecov
Normal file
28
.simplecov
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
SimpleCov.start "rails" do
|
||||||
|
enable_coverage :branch
|
||||||
|
|
||||||
|
command_name "RSpec process #{Process.pid}"
|
||||||
|
|
||||||
|
if ENV["CI"] # codecov compatibility
|
||||||
|
require 'simplecov-cobertura'
|
||||||
|
formatter SimpleCov::Formatter::CoberturaFormatter
|
||||||
|
else
|
||||||
|
formatter SimpleCov::Formatter::MultiFormatter.new([
|
||||||
|
SimpleCov::Formatter::SimpleFormatter,
|
||||||
|
SimpleCov::Formatter::HTMLFormatter
|
||||||
|
])
|
||||||
|
end
|
||||||
|
|
||||||
|
add_filter "/channels/" # not used
|
||||||
|
groups.delete("Channels")
|
||||||
|
|
||||||
|
add_group "Components", "app/components"
|
||||||
|
add_group "API", ["app/graphql", "app/serializers"]
|
||||||
|
add_group "Manager", ["app/dashboards", "app/fields"]
|
||||||
|
add_group "Models", ["app/models", "app/validators"]
|
||||||
|
add_group "Policies", "app/policies"
|
||||||
|
add_group "Services", "app/services"
|
||||||
|
add_group "Tasks", ["app/tasks", "lib/tasks"]
|
||||||
|
end
|
2
Gemfile
2
Gemfile
|
@ -125,6 +125,8 @@ group :test do
|
||||||
gem 'selenium-devtools'
|
gem 'selenium-devtools'
|
||||||
gem 'selenium-webdriver'
|
gem 'selenium-webdriver'
|
||||||
gem 'shoulda-matchers', require: false
|
gem 'shoulda-matchers', require: false
|
||||||
|
gem 'simplecov', require: false
|
||||||
|
gem 'simplecov-cobertura', require: false
|
||||||
gem 'timecop'
|
gem 'timecop'
|
||||||
gem 'vcr'
|
gem 'vcr'
|
||||||
gem 'webmock'
|
gem 'webmock'
|
||||||
|
|
12
Gemfile.lock
12
Gemfile.lock
|
@ -223,6 +223,7 @@ GEM
|
||||||
diff-lcs (1.5.1)
|
diff-lcs (1.5.1)
|
||||||
discard (1.3.0)
|
discard (1.3.0)
|
||||||
activerecord (>= 4.2, < 8)
|
activerecord (>= 4.2, < 8)
|
||||||
|
docile (1.4.0)
|
||||||
dotenv (2.8.1)
|
dotenv (2.8.1)
|
||||||
dotenv-rails (2.8.1)
|
dotenv-rails (2.8.1)
|
||||||
dotenv (= 2.8.1)
|
dotenv (= 2.8.1)
|
||||||
|
@ -728,6 +729,15 @@ GEM
|
||||||
simple_xlsx_reader (1.0.4)
|
simple_xlsx_reader (1.0.4)
|
||||||
nokogiri
|
nokogiri
|
||||||
rubyzip
|
rubyzip
|
||||||
|
simplecov (0.22.0)
|
||||||
|
docile (~> 1.1)
|
||||||
|
simplecov-html (~> 0.11)
|
||||||
|
simplecov_json_formatter (~> 0.1)
|
||||||
|
simplecov-cobertura (2.1.0)
|
||||||
|
rexml
|
||||||
|
simplecov (~> 0.19)
|
||||||
|
simplecov-html (0.12.3)
|
||||||
|
simplecov_json_formatter (0.1.4)
|
||||||
simpleidn (0.2.1)
|
simpleidn (0.2.1)
|
||||||
unf (~> 0.1.4)
|
unf (~> 0.1.4)
|
||||||
sinatra (3.2.0)
|
sinatra (3.2.0)
|
||||||
|
@ -991,6 +1001,8 @@ DEPENDENCIES
|
||||||
sidekiq
|
sidekiq
|
||||||
sidekiq-cron
|
sidekiq-cron
|
||||||
simple_xlsx_reader
|
simple_xlsx_reader
|
||||||
|
simplecov
|
||||||
|
simplecov-cobertura
|
||||||
skylight
|
skylight
|
||||||
spreadsheet_architect
|
spreadsheet_architect
|
||||||
spring
|
spring
|
||||||
|
|
|
@ -16,6 +16,10 @@
|
||||||
# users commonly want.
|
# users commonly want.
|
||||||
#
|
#
|
||||||
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
||||||
|
#
|
||||||
|
#
|
||||||
|
require 'simplecov' # see config in .simplecov file
|
||||||
|
|
||||||
require 'rspec/retry'
|
require 'rspec/retry'
|
||||||
|
|
||||||
SECURE_PASSWORD = 'my-s3cure-p4ssword'
|
SECURE_PASSWORD = 'my-s3cure-p4ssword'
|
||||||
|
|
Loading…
Reference in a new issue