• [gentoo-dev] [PATCH 1/2] ruby-ng.eclass: allow non-fatal use of test fu

    From Sam James@21:1/5 to All on Sat Mar 18 01:10:04 2023
    die -n will make die become non-fatal if run under 'nonfatal',
    this is useful if e.g. need to do cleanup.

    For example, in an ebuild, I need to setup a database, run tests,
    then always cleanup, which looks like:
    ```
    db_setup
    nonfatal each_fakegem_test || tests_failed=1
    db_cleanup

    if [[ ${tests_failed} == 1 ]] ; then
    die "Tests failed! Please see ..."
    fi
    ```

    Just like we do with e.g. virtualx. This also brings us into line
    with the Python eclasses.

    Signed-off-by: Sam James <sam@gentoo.org>
    ---
    eclass/ruby-ng.eclass | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
    index 67c22d518a313..aa8a15170cf80 100644
    --- a/eclass/ruby-ng.eclass
    +++ b/eclass/ruby-ng.eclass
    @@ -721,7 +721,7 @@ ruby-ng_rspec() {
    ;;
    esac

    - ${RUBY} -S rspec-${version} ${rspec_params} ${files} || die "rspec failed"
    + ${RUBY} -S rspec-${version} ${rspec_params} ${files} || die -n "rspec failed"
    }

    # @FUNCTION: ruby-ng_cucumber
    @@ -754,7 +754,7 @@ ruby-ng_cucumber() {
    ;;
    esac

    - CUCUMBER_PUBLISH_QUIET=true ${RUBY} -S cucumber ${cucumber_params} "$@" || die "cucumber failed"
    + CUCUMBER_PUBLISH_QUIET=true ${RUBY} -S cucumber ${cucumber_params} "$@" || die -n "cucumber failed"
    }

    # @FUNCTION: ruby-ng_testrb-2
    --
    2.40.0

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)