Skip Menu |

This queue is for tickets about the CPP-panda-lib CPAN distribution.

Report information
The Basics
Id: 125080
Status: resolved
Priority: 0/
Queue: CPP-panda-lib

People
Owner: Nobody in particular
Requestors: SREZIC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 1.1.2
Fixed in: (no value)



Subject: Tests fail with older Test::More
On some of my smoker systems the test suite fails: ... Output from '/usr/bin/make test': Running Mkbootstrap for CPP::panda::lib () chmod 644 lib.bs PERL_DL_NONLAZY=1 /bbbike/perl-5.20.3D/bin/perl "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t rebuild Makefile.PL adding TEST_FULL=1 to enable all tests' at t/cpp_tests.t line 17. The plan was already output at /opt/perl-5.20.3D/lib/site_perl/5.20.3/Test/Builder.pm line 2510. t/cpp_tests.t .. All 1 subtests passed ... Probably this happens if Test::More is too old. On my systems pass reports happen only with 1.302073 and newer: **************************************************************** Regression 'mod:Test::More' **************************************************************** Name Theta StdErr T-stat [0='const'] 0.0000 0.0000 0.37 [1='eq_1.302073'] 1.0000 0.0000 5860262020725324.00 [2='eq_1.302075'] 1.0000 0.0000 9181266082686588.00 [3='eq_1.302085'] 1.0000 0.0000 5860262020725325.00 [4='eq_1.302086'] 1.0000 0.0000 12431493043154568.00 [5='eq_1.302106'] 1.0000 0.0000 10150271565562516.00 [6='eq_1.302121'] 1.0000 0.0000 5860262020725322.00 [7='eq_1.302122'] 1.0000 0.0000 5860262020725324.00 [8='eq_1.302133'] 1.0000 0.0000 16251964811290322.00 [9='eq_1.302135'] 1.0000 0.0000 9181266082686584.00 R^2= 1.000, N= 77, K= 10 ****************************************************************
Subject: Re: [rt.cpan.org #125080] Tests fail with older Test::More
Date: Thu, 12 Apr 2018 21:32:19 +0300
To: bug-CPP-panda-lib [...] rt.cpan.org
From: Олег Пронин <syber.rus [...] gmail.com>
I don't see any errors, it just says "All 1 subtests passed" Actually it does not test anything, because CPP::panda::lib is just a wrapper of C++ library to perl module (without XS adapters), so the test are only possible with CPP-CATCH framework, which requires additional files compilation, so it is only enabled when TEST_FULL is set. when TEST_FULL is set, it compiles a small XS with the only sub that runs cpp-catch tests. If it's not set, it doesn't even compile XS. if ($full_tests) { ok (CPP::panda::lib::Test::test_run_all_cpp_tests()); } else { warn "rebuild Makefile.PL adding TEST_FULL=1 to enable all tests'" unless $full_tests; ok 1; } done_testing(); So the code flow on your machine is just ok 1; done_testing(); Isn't this supported by older Test::More ?? 2018-04-12 21:01 GMT+03:00 Slaven_Rezic via RT <bug-CPP-panda-lib@rt.cpan.org>: Show quoted text
> Thu Apr 12 14:01:35 2018: Request 125080 was acted upon. > Transaction: Ticket created by SREZIC > Queue: CPP-panda-lib > Subject: Tests fail with older Test::More > Broken in: 1.1.2 > Severity: (no value) > Owner: Nobody > Requestors: SREZIC@cpan.org > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=125080 > > > > On some of my smoker systems the test suite fails: > > ... > Output from '/usr/bin/make test': > > Running Mkbootstrap for CPP::panda::lib () > chmod 644 lib.bs > PERL_DL_NONLAZY=1 /bbbike/perl-5.20.3D/bin/perl "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t > rebuild Makefile.PL adding TEST_FULL=1 to enable all tests' at t/cpp_tests.t line 17. > The plan was already output at /opt/perl-5.20.3D/lib/site_perl/5.20.3/Test/Builder.pm line 2510. > t/cpp_tests.t .. > All 1 subtests passed > ... > > > Probably this happens if Test::More is too old. On my systems pass reports happen only with 1.302073 and newer: > > **************************************************************** > Regression 'mod:Test::More' > **************************************************************** > Name Theta StdErr T-stat > [0='const'] 0.0000 0.0000 0.37 > [1='eq_1.302073'] 1.0000 0.0000 5860262020725324.00 > [2='eq_1.302075'] 1.0000 0.0000 9181266082686588.00 > [3='eq_1.302085'] 1.0000 0.0000 5860262020725325.00 > [4='eq_1.302086'] 1.0000 0.0000 12431493043154568.00 > [5='eq_1.302106'] 1.0000 0.0000 10150271565562516.00 > [6='eq_1.302121'] 1.0000 0.0000 5860262020725322.00 > [7='eq_1.302122'] 1.0000 0.0000 5860262020725324.00 > [8='eq_1.302133'] 1.0000 0.0000 16251964811290322.00 > [9='eq_1.302135'] 1.0000 0.0000 9181266082686584.00 > > R^2= 1.000, N= 77, K= 10 > **************************************************************** >
You are combining "no_plan" (which already outputs a plan) and done_testing (which seems to add a plan, too, with older Test::More). Dropping one of the two should fix the problem. On 2018-04-12 14:32:31, SYBER wrote: Show quoted text
> I don't see any errors, it just says "All 1 subtests passed" > > Actually it does not test anything, because CPP::panda::lib is just a > wrapper of C++ library to perl module (without XS adapters), so the > test are only possible with CPP-CATCH framework, which requires > additional files compilation, so it is only enabled when TEST_FULL is > set. > > when TEST_FULL is set, it compiles a small XS with the only sub that > runs cpp-catch tests. If it's not set, it doesn't even compile XS. > > if ($full_tests) { > ok (CPP::panda::lib::Test::test_run_all_cpp_tests()); > } else { > warn "rebuild Makefile.PL adding TEST_FULL=1 to enable all tests'" > unless $full_tests; > ok 1; > } > > done_testing(); > > > So the code flow on your machine is just > > ok 1; > done_testing(); > > Isn't this supported by older Test::More ?? > > 2018-04-12 21:01 GMT+03:00 Slaven_Rezic via RT <bug-CPP-panda- > lib@rt.cpan.org>:
> > Thu Apr 12 14:01:35 2018: Request 125080 was acted upon. > > Transaction: Ticket created by SREZIC > > Queue: CPP-panda-lib > > Subject: Tests fail with older Test::More > > Broken in: 1.1.2 > > Severity: (no value) > > Owner: Nobody > > Requestors: SREZIC@cpan.org > > Status: new > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=125080 > > > > > > > On some of my smoker systems the test suite fails: > > > > ... > > Output from '/usr/bin/make test': > > > > Running Mkbootstrap for CPP::panda::lib () > > chmod 644 lib.bs > > PERL_DL_NONLAZY=1 /bbbike/perl-5.20.3D/bin/perl "- > > MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef > > *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" > > t/*.t > > rebuild Makefile.PL adding TEST_FULL=1 to enable all tests' at > > t/cpp_tests.t line 17. > > The plan was already output at /opt/perl- > > 5.20.3D/lib/site_perl/5.20.3/Test/Builder.pm line 2510. > > t/cpp_tests.t .. > > All 1 subtests passed > > ... > > > > > > Probably this happens if Test::More is too old. On my systems pass > > reports happen only with 1.302073 and newer: > > > > **************************************************************** > > Regression 'mod:Test::More' > > **************************************************************** > > Name Theta StdErr T-stat > > [0='const'] 0.0000 0.0000 0.37 > > [1='eq_1.302073'] 1.0000 0.0000 > > 5860262020725324.00 > > [2='eq_1.302075'] 1.0000 0.0000 > > 9181266082686588.00 > > [3='eq_1.302085'] 1.0000 0.0000 > > 5860262020725325.00 > > [4='eq_1.302086'] 1.0000 0.0000 > > 12431493043154568.00 > > [5='eq_1.302106'] 1.0000 0.0000 > > 10150271565562516.00 > > [6='eq_1.302121'] 1.0000 0.0000 > > 5860262020725322.00 > > [7='eq_1.302122'] 1.0000 0.0000 > > 5860262020725324.00 > > [8='eq_1.302133'] 1.0000 0.0000 > > 16251964811290322.00 > > [9='eq_1.302135'] 1.0000 0.0000 > > 9181266082686584.00 > > > > R^2= 1.000, N= 77, K= 10 > > **************************************************************** > >
On Sun Apr 15 01:58:58 2018, SREZIC wrote: Show quoted text
> You are combining "no_plan" (which already outputs a plan) and > done_testing (which seems to add a plan, too, with older Test::More). > Dropping one of the two should fix the problem.
I've uploaded a new version that leaves only 'no_plan' option.