danger-xcov is the Danger plugin of xcov, a friendly visualizer for Xcode's code coverage files.
sudo gem install danger-xcov
Simply add xcov.report
to your Dangerfile
passing those xcov parameters
you need. Click here to
see the updated list of parameters allowed by xcov.
xcov.report(
scheme: 'EasyPeasy',
workspace: 'Example/EasyPeasy.xcworkspace',
exclude_targets: 'Demo.app',
minimum_coverage_percentage: 90,
minimum_coverage_percentage_for_changed_files: 80,
ignore_list_of_minimum_coverage_percentage_for_changed_files: ['View', 'State']
)
The result is as cool as follows:
You can also process the output generated by xcov before posting the markdown report as follows:
# Generate report
report = xcov.produce_report(
scheme: 'EasyPeasy',
workspace: 'Example/EasyPeasy.xcworkspace',
exclude_targets: 'Demo.app',
minimum_coverage_percentage: 90,
minimum_coverage_percentage_for_changed_files: 80,
ignore_list_of_minimum_coverage_percentage_for_changed_files: ['View', 'State']
)
# Do some custom filtering with the report here
# Post markdown report
xcov.output_report(report)
- Added
minimum_coverage_percentage_for_changed_files
parameter to allow minimum coverage for new and modified files only. - Added
ignore_list_of_minimum_coverage_percentage_for_changed_files
parameter to allow skipping files based on the architecture of the project.- For example, if the parameter is like
ignore_list_of_minimum_coverage_percentage_for_changed_files: ['View', 'State']
, then any filename which contains the wordView
orState
will be skipped from this coverage check.
- For example, if the parameter is like
Add this to your gemfile instead of danger-xcov
, point it to this fork.
gem 'danger-xcov', :git => 'https://github.com/rakutentech/danger-xcov.git'
This project is licensed under the terms of the MIT license. See the LICENSE file.