
On 1/1/22 2:07 PM, Andrea Bolognani wrote:
Failed pipeline: https://gitlab.com/libvirt/libvirt/-/pipelines/439750804 Fixed pipeline: https://gitlab.com/abologna/libvirt/-/pipelines/439847251
Andrea Bolognani (3): tests: virtimetest: Move comment tests: virtimetest: Skip more tests near year's end
Ugh, I had managed to repress the memories of this, and now it's come back :-O
tests: virtimetest: Mention GLib version containing fix
tests/virtimetest.c | 58 ++++++++++++++++++++++----------------------- 1 file changed, 28 insertions(+), 30 deletions(-)
Reviewed-by: Laine Stump <laine@redhat.com> *if* you can explain to me why (at 11:55PM local time on Jan 1) all 28 of virtimetest cases were run by "ninja -C build test", with test 27 & 28 failing, *but* when I just ran build/tests/virtimetest directly, it succeeded - running it under gdb I found that isNearYearEnd() properly returned true, so the final 8 tests aren't run (as you would expect). Not only that, but when I ran "ninja -C build test" at 12:01AM Jan 2, test 28 failed; it also failed when I directly ran virtimetest. For the first problem - is it possible that ninja is setting the timezone to something different during the build? My machine is in EST (UTC -5). For the 2nd problem - maybe we need to widen the definition of "isNearYearEnd()"? If I make the following change then the final tests are skipped by both ninja -C build test and virtimetest directly when the date is 12;14AM Jan 2. Oh, wait. That solves the 1st problem too :-) diff --git a/tests/virtimetest.c b/tests/virtimetest.c index 5d0c0717ca..383a4cfa59 100644 --- a/tests/virtimetest.c +++ b/tests/virtimetest.c @@ -104,7 +104,7 @@ isNearYearEnd(void) g_autoptr(GDateTime) now = g_date_time_new_now_local(); return ((g_date_time_get_month(now) == 1 && - g_date_time_get_day_of_month(now) == 1) || + g_date_time_get_day_of_month(now) <= 2) || (g_date_time_get_month(now) == 12 && g_date_time_get_day_of_month(now) == 31)); } (I was just kidding about the "*if*" above - you have my Reviewed-by: in any case. But unless you want to spend the time figuring out why my tests failed on Jan 1/early Jan 2, I'm going to send the above diff as a patch)