Re: [gentoo-dev] [PATCH 1/2] eclass/ruby-fakegem.eclass: warn when using an unknown test recipe

2023-03-25 Thread Sam James

Hans de Graaff  writes:

> Signed-off-by: Hans de Graaff 
> ---
>  eclass/ruby-fakegem.eclass | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/eclass/ruby-fakegem.eclass b/eclass/ruby-fakegem.eclass
> index 9ef5e1f098d1..08e3ccf588ac 100644
> --- a/eclass/ruby-fakegem.eclass
> +++ b/eclass/ruby-fakegem.eclass
> @@ -193,7 +193,10 @@ case ${RUBY_FAKEGEM_RECIPE_TEST} in
>   RESTRICT+=" !test? ( test )"
>   ruby_add_bdepend "test? ( dev-util/cucumber )"
>   ;;
> + none)
> + ;;
>   *)
> + eqawarn "Unknown test recipe '${RUBY_FAKEGEM_RECIPE_TEST}' 
> specified, using 'none'"
>   RUBY_FAKEGEM_RECIPE_TEST="none"
>   ;;
>  esac

It's a nice improvement I think, I was wondering about this earlier. cheers!


signature.asc
Description: PGP signature


Re: [gentoo-dev] [PATCH 2/2] eclass/ruby-fakegem.eclass: add support for sus test runner

2023-03-25 Thread Anna (cybertailor) Vyalkova
On 2023-03-25 09:18, Hans de Graaff wrote:
> Signed-off-by: Hans de Graaff 
> ---
>  eclass/ruby-fakegem.eclass |  9 +
>  eclass/ruby-ng.eclass  | 25 +
>  2 files changed, 34 insertions(+)
> 
> diff --git a/eclass/ruby-fakegem.eclass b/eclass/ruby-fakegem.eclass
> index 08e3ccf588ac..4ad1d8eca683 100644
> --- a/eclass/ruby-fakegem.eclass
> +++ b/eclass/ruby-fakegem.eclass
> @@ -44,6 +44,7 @@ RUBY_FAKEGEM_TASK_DOC="${RUBY_FAKEGEM_TASK_DOC-rdoc}"
>  #  - rspec3 (calls ruby-ng_rspec, adds dev-ruby/rspec:3 to the dependencies)
>  #  - cucumber (calls ruby-ng_cucumber, adds dev-util/cucumber to the
>  #dependencies)
> +#  - sus (calls ruby-ng_sus, adds dev-ruby/sus to the dependencies)
>  #  - none
>  RUBY_FAKEGEM_RECIPE_TEST="${RUBY_FAKEGEM_RECIPE_TEST-rake}"
>  
> @@ -193,6 +194,11 @@ case ${RUBY_FAKEGEM_RECIPE_TEST} in
>   RESTRICT+=" !test? ( test )"
>   ruby_add_bdepend "test? ( dev-util/cucumber )"
>   ;;
> + sus)
> + IUSE+=" test"
> + RESTRICT+=" !test? ( test )"
> + ruby_add_bdepend "test? ( dev-ruby/sus )"
> + ;;
>   none)
>   ;;
>   *)
> @@ -566,6 +572,9 @@ each_fakegem_test() {
>   cucumber)
>   ruby-ng_cucumber
>   ;;
> + sus)
> + ruby-ng_sus
> + ;;
>   none)
>   ewarn "each_fakegem_test called, but 
> \${RUBY_FAKEGEM_RECIPE_TEST} is 'none'"
>   ;;
> diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
> index f85a933f81d9..c273a431c5b1 100644
> --- a/eclass/ruby-ng.eclass
> +++ b/eclass/ruby-ng.eclass
> @@ -757,6 +757,31 @@ ruby-ng_cucumber() {
>   CUCUMBER_PUBLISH_QUIET=true ${RUBY} -S cucumber ${cucumber_params} "$@" 
> || die -n "cucumber failed"
>  }
>  
> +# @FUNCTION: ruby-ng_sus
> +# @DESCRIPTION:
> +# This is simply a wrapper around the sus-parallel command (executed by 
> $RUBY})
> +# which also respects TEST_VERBOSE and NOCOLOR environment variables.
> +ruby-ng_sus() {
> + debug-print-function ${FUNCNAME} "${@}"
> +
> + if [[ "${DEPEND}${BDEPEND}" != *"dev-ruby/sus"* ]]; then
> + ewarn "Missing test dependency dev-ruby/sus"
> + fi
> +
> + local sus_params=

How about making it a bash array?

> + # sus has a --verbose argument but it does not seem to impact the 
> output (yet?)
> + case ${TEST_VERBOSE} in
> + 1|yes|true)
> + sus_params+=" --verbose"
> + ;;
> + *)
> + ;;
> + esac
> +
> + ${RUBY} -S sus-parallel ${sus_params} "$@" || die -n "sus failed"
> +}
> +
>  # @FUNCTION: ruby-ng_testrb-2
>  # @DESCRIPTION:
>  # This is simply a replacement for the testrb command that load the test
> -- 
> 2.39.2
> 
> 



[gentoo-dev] [PATCH 2/2] eclass/ruby-fakegem.eclass: add support for sus test runner

2023-03-25 Thread Hans de Graaff
Signed-off-by: Hans de Graaff 
---
 eclass/ruby-fakegem.eclass |  9 +
 eclass/ruby-ng.eclass  | 25 +
 2 files changed, 34 insertions(+)

diff --git a/eclass/ruby-fakegem.eclass b/eclass/ruby-fakegem.eclass
index 08e3ccf588ac..4ad1d8eca683 100644
--- a/eclass/ruby-fakegem.eclass
+++ b/eclass/ruby-fakegem.eclass
@@ -44,6 +44,7 @@ RUBY_FAKEGEM_TASK_DOC="${RUBY_FAKEGEM_TASK_DOC-rdoc}"
 #  - rspec3 (calls ruby-ng_rspec, adds dev-ruby/rspec:3 to the dependencies)
 #  - cucumber (calls ruby-ng_cucumber, adds dev-util/cucumber to the
 #dependencies)
+#  - sus (calls ruby-ng_sus, adds dev-ruby/sus to the dependencies)
 #  - none
 RUBY_FAKEGEM_RECIPE_TEST="${RUBY_FAKEGEM_RECIPE_TEST-rake}"
 
@@ -193,6 +194,11 @@ case ${RUBY_FAKEGEM_RECIPE_TEST} in
RESTRICT+=" !test? ( test )"
ruby_add_bdepend "test? ( dev-util/cucumber )"
;;
+   sus)
+   IUSE+=" test"
+   RESTRICT+=" !test? ( test )"
+   ruby_add_bdepend "test? ( dev-ruby/sus )"
+   ;;
none)
;;
*)
@@ -566,6 +572,9 @@ each_fakegem_test() {
cucumber)
ruby-ng_cucumber
;;
+   sus)
+   ruby-ng_sus
+   ;;
none)
ewarn "each_fakegem_test called, but 
\${RUBY_FAKEGEM_RECIPE_TEST} is 'none'"
;;
diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index f85a933f81d9..c273a431c5b1 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -757,6 +757,31 @@ ruby-ng_cucumber() {
CUCUMBER_PUBLISH_QUIET=true ${RUBY} -S cucumber ${cucumber_params} "$@" 
|| die -n "cucumber failed"
 }
 
+# @FUNCTION: ruby-ng_sus
+# @DESCRIPTION:
+# This is simply a wrapper around the sus-parallel command (executed by $RUBY})
+# which also respects TEST_VERBOSE and NOCOLOR environment variables.
+ruby-ng_sus() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   if [[ "${DEPEND}${BDEPEND}" != *"dev-ruby/sus"* ]]; then
+   ewarn "Missing test dependency dev-ruby/sus"
+   fi
+
+   local sus_params=
+
+   # sus has a --verbose argument but it does not seem to impact the 
output (yet?)
+   case ${TEST_VERBOSE} in
+   1|yes|true)
+   sus_params+=" --verbose"
+   ;;
+   *)
+   ;;
+   esac
+
+   ${RUBY} -S sus-parallel ${sus_params} "$@" || die -n "sus failed"
+}
+
 # @FUNCTION: ruby-ng_testrb-2
 # @DESCRIPTION:
 # This is simply a replacement for the testrb command that load the test
-- 
2.39.2




[gentoo-dev] [PATCH 1/2] eclass/ruby-fakegem.eclass: warn when using an unknown test recipe

2023-03-25 Thread Hans de Graaff
Signed-off-by: Hans de Graaff 
---
 eclass/ruby-fakegem.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/ruby-fakegem.eclass b/eclass/ruby-fakegem.eclass
index 9ef5e1f098d1..08e3ccf588ac 100644
--- a/eclass/ruby-fakegem.eclass
+++ b/eclass/ruby-fakegem.eclass
@@ -193,7 +193,10 @@ case ${RUBY_FAKEGEM_RECIPE_TEST} in
RESTRICT+=" !test? ( test )"
ruby_add_bdepend "test? ( dev-util/cucumber )"
;;
+   none)
+   ;;
*)
+   eqawarn "Unknown test recipe '${RUBY_FAKEGEM_RECIPE_TEST}' 
specified, using 'none'"
RUBY_FAKEGEM_RECIPE_TEST="none"
;;
 esac
-- 
2.39.2