• Stars
    star
    157
  • Rank 231,046 (Top 5 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 3 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

GitHub Action which helps enforce code coverage threshold using lcov created by Very Good Ventures πŸ¦„

Very Good Coverage

Very Good Ventures Very Good Ventures

Developed with πŸ’™ by Very Good Ventures πŸ¦„

ci License: MIT


A GitHub Action which helps enforce a minimum code coverage threshold.

Inputs

Very Good Coverage accepts the following configuration inputs:

Input name Description Default value Optional
path The absolute path to the lcov.info file. "/coverage/lcov.info" βœ…
min_coverage The minimum coverage percentage allowed. 100 βœ…
exclude List of paths to exclude from the coverage report, separated by an empty space. Supports globs to describe file patterns. "" βœ…

Example usage

uses: VeryGoodOpenSource/very_good_coverage@v2
with:
  path: '/coverage/lcov.info'
  min_coverage: 95
  exclude: '**/*_observer.dart **/change.dart'

FAQs

How can I avoid Very Good Coverage reporting an empty or non-existent coverage file?

Relevant issue

A failure for non-existent coverage file can be resolved by setting the path input to match the location of the already generated lcov file.

uses: VeryGoodOpenSource/very_good_coverage@v2
with:
  path: 'my_project/coverage/lcov.info'

If your generated lcov file is empty this might be because you have no test files or your tests are not generating any coverage data.

If you wish to always bypass these warnings, we recommend using a conditional statement in your workflow to avoid running the Very Good Coverage action when the lcov file is empty or non-existent.

For example, if your non-existent or empty coverage file is meant to be located at /coverage/lcov.info you may do:

- name: Check for existing and non-empty coverage file
  id: test_coverage_file
  run: if [ -s "/coverage/lcov.info" ]; then echo "result=true" >> $GITHUB_OUTPUT ; else echo "result=false" >> $GITHUB_OUTPUT; fi
- name: Very Good Coverage
  if: steps.test_coverage_file.outputs.result == 'true'
  uses: VeryGoodOpenSource/very_good_coverage@v2
  with:
    path: '/coverage/lcov.info'

Why is my input path not relative to the specified working-directory?

Relevant issue

The input path must be absolute. The specified working directory is ignored by the input path. This is because it is not possible to access the working directory from an action. In other words, Very Good Coverage always runs from the root of your repository.

For example, if your working directory is my_project and your file is at /my_project/coverage/lcov.info you must do:

jobs:
  build:
    defaults:
      run:
        working-directory: my_project/
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Very Good Coverage
        uses: VeryGoodOpenSource/very_good_coverage@v2
        with:
          path: /my_project/coverage/lcov.info

More Repositories

1

very_good_cli

A Very Good Command-Line Interface for Dart created by Very Good Ventures πŸ¦„
Dart
2,065
star
2

dart_frog

A fast, minimalistic backend framework for Dart 🎯
Dart
1,725
star
3

formz

A unified form representation in Dart used at Very Good Ventures πŸ¦„
Dart
344
star
4

very_good_analysis

Lint rules for Dart and Flutter used internally at Very Good Ventures πŸ¦„
Dart
333
star
5

very_good_workflows

Reusable GitHub workflows used at Very Good Ventures πŸ¦„
CSS
281
star
6

very_good_infinite_list

A Very Good Infinite List Widget created by Very Good Ventures. Great for activity feeds, news feeds, and more. πŸ¦„
Dart
158
star
7

very_good_core

A Very Good Flutter Starter Project created by the Very Good Ventures Team πŸ¦„
C++
125
star
8

mockingjay

A package that makes it easy to mock, test, and verify navigation in Flutter. Created by Very Good Ventures πŸ¦„
Dart
111
star
9

awesome_dart_frog

An awesome repo with Dart Frog articles, tutorials, plugins, and more! Created by Very Good Ventures.
97
star
10

very_good_flame_game

A Very Good Flutter Starter Flame Game created by the Very Good Ventures Team πŸ¦„
Dart
85
star
11

very_good_performance

Utility on top of the Flutter Driver API that facilitates measuring the performance of your app in an automated way created by Very Good Ventures πŸ¦„
C++
80
star
12

very_good_ranch

A very good Flame game built by Very Good Ventures πŸ¦„
Dart
73
star
13

r13n

Regionalization support for Flutter. Built by Very Good Ventures πŸ¦„
Dart
72
star
14

flutter_web_preloader

A brick that creates a smart web entrypoint for Flutter and preloads any type of asset before starting an app.
HTML
68
star
15

very_good_wear_app

A Very Good Flutter Wear OS App Starter Project created by the Very Good Ventures Team πŸ¦„
Dart
64
star
16

flame_behaviors

An implementation of the behavioral composition pattern for Flame. Built by Very Good Ventures πŸ¦„
Dart
61
star
17

pub_updater

A Dart package which supports checking if a current package is up-to-date.
Dart
54
star
18

cli_completion

Completion functionality for Dart Command-Line Interfaces built using CommandRunner. Built by Very Good Ventures. πŸ¦„
Dart
43
star
19

very_good_flutter_package

A Very Good Flutter Package Template created by the Very Good Ventures Team πŸ¦„
Dart
41
star
20

very_good_dart_cli

A Very Good Dart CLI Template created by the Very Good Ventures Team πŸ¦„
Dart
33
star
21

very_good_flutter_plugin

A Very Good Flutter Federated Plugin created by the Very Good Ventures Team πŸ¦„
Dart
29
star
22

very_good_templates

Collection of open-source templates created and maintained by Very Good Ventures.
Dart
28
star
23

very_good_test_runner

A test runner for Flutter and Dart created by Very Good Ventures πŸ¦„
Dart
17
star
24

very_good_docs_site

A Very Good Documentation Site created by the Very Good Ventures Team πŸ¦„
JavaScript
16
star
25

very_good_dart_package

A Very Good Dart Package Template created by the Very Good Ventures Team πŸ¦„
Dart
14
star
26

very_good_hub

An end-to-end example of Flutter+Dart Frog application, using authentication
Dart
13
star
27

flame_steering_behaviors

Flame behaviors used to organically manage the movement of an entity. Built by Very Good Ventures πŸ¦„
Dart
10
star
28

.github

7
star
29

changelogs

Changelogs for open source tools maintained by Very Good Ventures.
TypeScript
5
star
30

very_good_dictionaries

Custom cspell dictionaries used at Very Good Ventures πŸ¦„
4
star