Bug 1663605 - Test suite for bigloo fails silently, but signals success
Summary: Test suite for bigloo fails silently, but signals success
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: bigloo
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jerry James
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-01-05 11:21 UTC by Tim Landscheidt
Modified: 2019-07-15 00:56 UTC (History)
3 users (show)

Fixed In Version: bigloo-4.3f-1.fc30
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-07-15 00:56:35 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Tim Landscheidt 2019-01-05 11:21:13 UTC
While working on https://src.fedoraproject.org/rpms/bigloo/pull-request/1, I noticed that bigloo's test suite reports test failures as successes.  For example, search in https://kojipkgs.fedoraproject.org//work/tasks/7670/31827670/build.log for "failed".

Extracting one example from the Makefile shows that it's the individual test, not the overall suite:

| [tim@passepartout ~/var/tmp/bigloo]$ (cd bigloo4.3c/api/text/recette && $OLDPWD/bigloo4.3c/bin/bglrun.sh ./recette; echo $?)
| cond-expand...ok.
| hyphens...ok.
| hyphenate-english...ok.
| gb2312...*** ERROR:gb2312:
| file missing -- /usr/lib64/bigloo/4.3c/text/data/gb2312.sch
| error.
|    ==> provided: [#(#u"Version pas mal resserrée, et je pense ")]
|        expected: [#u"Version pas mal resserrée, et je pense "]

| All tests executed...
|  3 succeeded
|  1 failed (gb2312)
| 0
| [tim@passepartout ~/var/tmp/bigloo]$

I don't speak Scheme, but I believe that something like:

| --- /dev/fd/63  2019-01-05 11:16:52.811442441 +0000
| +++ bigloo4.3c/api/text/recette/recette.scm     2019-01-05 11:15:40.707794595 +0000
| @@ -153,10 +153,13 @@
|        ;; if we reach that point, we are done
|        (print "\n"
|              (if (null? tests) "All" (reverse tests))
| -            " tests executed...\n"
| -            (if (null? *failure*)
| -                "all succeeded"
| -                (format " ~a succeeded\n ~a failed ~a"
| -                        *success*
| -                        (length *failure*)
| -                        (reverse *failure*))))))
| +            " tests executed...")
| +      (if (null? *failure*)
| +         (print "all succeeded")
| +          (begin
| +           (print
| +            (format " ~a succeeded\n ~a failed ~a"
| +                  *success*
| +                  (length *failure*)
| +                  (reverse *failure*)))
| +           (exit 1)))))

(in all tests) would fix this.

Comment 1 Jerry James 2019-01-10 03:40:37 UTC
Thanks for your recent input on bigloo, Tim.  Sorry to be slow replying to you.  Every time I go on vacation I come home to a giant pile of work... :-)

Are you interested in comaintaining bigloo?

As for this particular issue, I think a simpler patch is possible.  How about if we leave the printing code alone, and simply add a new form at the end that does something like (exit (if (null? *failure*) 1 0))?  We could even do (exit (length *failure*)), which would make the exit code report the number of failures.  What do you think?

Comment 2 Tim Landscheidt 2019-01-11 02:41:26 UTC
I personally do not use bigloo and thus don't feel qualified to triage issues there (to illustrate: I initially tested the logic in my patch by trying to compare nil with t :-)).

Regarding how to solve this, I do not have any preference and would leave it to upstream.  (The amount of identical boilerplate in bigloo4.3c/api/*/recette*/recette.scm suggests to do some major deduplication there anyway.)

Comment 3 Fedora Update System 2019-07-06 04:02:44 UTC
FEDORA-2019-35968a964b has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-35968a964b

Comment 4 Fedora Update System 2019-07-07 01:25:44 UTC
bigloo-4.3f-1.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-35968a964b

Comment 5 Fedora Update System 2019-07-15 00:56:35 UTC
bigloo-4.3f-1.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.