Ticket #878 (closed bug: fixed)

Opened 5 years ago

Last modified 5 years ago

Recent commits break buildtools_tests

Reported by: jkeenan Owned by:
Priority: normal Milestone:
Component: build Version: 1.4.0
Severity: medium Keywords: ops2pm buildtools buildtools_tests
Cc: Whiteknight Language:
Patch status: new Platform:

Description

In the past 24 hours commits to trunk -- most likely r40293 and r40295 -- have caused some of the tests in make buildtools_tests (or, alternatively, perl Configure.pl --test=build) to begin breaking for the first time in many months.

Here is the output of prove -v on the 3 failing files:

$ prove -v t/tools/ops2pm/09-prepare_real_ops.t t/tools/ops2pm/10-print_module.t t/tools/ops2pm/11-print_h.t 
t/tools/ops2pm/09-prepare_real_ops....

OK:  Parrot top directory located
1..38
ok 1 - use Parrot::Ops2pm;
ok 2 - Positioned at top-level Parrot directory
ok 3 - changed to temp directory for testing
ok 4 - able to make tempdir/src
ok 5 - able to make tempdir/src
ok 6 - copied .ops file
ok 7 - copied .ops file
ok 8 - copied ops.num file
ok 9 - copied ops.skip file
ok 10 - The object isa Parrot::Ops2pm
ok 11 - prepare_ops() returned successfully
ok 12 - 'ops' key has been defined
ok 13 - load_op_map_files() completed successfully
ok 14 - ops.num located after renumbering
ok 15 - ops.skip located after renumbering
ok 16 - sort_ops returned successfully
op schedule_p: sequence mismatch: ops.num 46 vs. core.ops 48 at /home/jimk/work/parrot/lib/Parrot/Ops2pm.pm line 289.
# Looks like you planned 38 tests but only ran 16.
# Looks like your test died just after 16.
 Dubious, test returned 255 (wstat 65280, 0xff00)
 Failed 22/38 subtests 
t/tools/ops2pm/10-print_module........

OK:  Parrot top directory located
1..42
ok 1 - use Parrot::Ops2pm;
ok 2 - Positioned at top-level Parrot directory
ok 3 - changed to temp directory for testing
ok 4 - able to make tempdir/src
ok 5 - able to make tempdir/src
ok 6 - copied .ops file
ok 7 - copied .ops file
ok 8 - copied ops.num file
ok 9 - copied ops.skip file
ok 10 - The object isa Parrot::Ops2pm
ok 11 - prepare_ops() returned successfully
ok 12 - 'ops' key has been defined
ok 13 - load_op_map_files() completed successfully
ok 14 - ops.num located after renumbering
ok 15 - ops.skip located after renumbering
ok 16 - sort_ops returned successfully
op schedule_p: sequence mismatch: ops.num 46 vs. core.ops 48 at /home/jimk/work/parrot/lib/Parrot/Ops2pm.pm line 289.
# Looks like you planned 42 tests but only ran 16.
# Looks like your test died just after 16.
 Dubious, test returned 255 (wstat 65280, 0xff00)
 Failed 26/42 subtests 
t/tools/ops2pm/11-print_h.............

OK:  Parrot top directory located
1..23
ok 1 - use Parrot::Ops2pm;
ok 2 - Positioned at top-level Parrot directory
ok 3 - changed to temp directory for testing
ok 4 - able to make tempdir/src
ok 5 - able to make tempdir/src
ok 6 - copied .ops file
ok 7 - copied .ops file
ok 8 - copied ops.num file
ok 9 - copied ops.skip file
ok 10 - The object isa Parrot::Ops2pm
ok 11 - prepare_ops() returned successfully
ok 12 - 'ops' key has been defined
ok 13 - load_op_map_files() completed successfully
ok 14 - ops.num located after renumbering
ok 15 - ops.skip located after renumbering
ok 16 - sort_ops returned successfully
op schedule_p: sequence mismatch: ops.num 46 vs. core.ops 48 at /home/jimk/work/parrot/lib/Parrot/Ops2pm.pm line 289.
# Looks like you planned 23 tests but only ran 16.
# Looks like your test died just after 16.
 Dubious, test returned 255 (wstat 65280, 0xff00)
 Failed 7/23 subtests 

Test Summary Report
-------------------
t/tools/ops2pm/09-prepare_real_ops (Wstat: 65280 Tests: 16 Failed: 0)
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 38 tests but ran 16.
t/tools/ops2pm/10-print_module    (Wstat: 65280 Tests: 16 Failed: 0)
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 42 tests but ran 16.
t/tools/ops2pm/11-print_h         (Wstat: 65280 Tests: 16 Failed: 0)
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 23 tests but ran 16.
Files=3, Tests=48,  1 wallclock secs ( 0.01 usr  0.00 sys +  0.31 cusr  0.03 csys =  0.35 CPU)
Result: FAIL

Thank you very much.
kid51

Attachments

ops.num.diff Download (28.7 KB) - added by jkeenan 5 years ago.
Result (diff) of running 'make opsrenumber' in trunk

Change History

  Changed 5 years ago by jkeenan

  • component changed from none to build

in reply to: ↑ description ; follow-up: ↓ 3   Changed 5 years ago by jkeenan

Whiteknight,

On #parrot you indicated you had run make opsrenumber in the branch before merging to trunk. It appears that was not sufficient.

After encountering these three test failures, I ran make opsrenumber in trunk. src/ops/ops.num was modified as per attachment. With that change, the three build tools tests files once again passed with flying colors.

Can you verify this? If so, then please apply, re-test and close this ticket.

Thank you very much.
kid51

Changed 5 years ago by jkeenan

Result (diff) of running 'make opsrenumber' in trunk

in reply to: ↑ 2   Changed 5 years ago by jkeenan

  • patch set to new

Replying to jkeenan:

Can you verify this? If so, then please apply,

make realclean && perl Configure.pl --test=build is recommended.

re-test and close this ticket.

  Changed 5 years ago by whiteknight

I will try to verify all this a little bit later this morning. This does seem like a good opportunity for us to document somewhere the exact process for adding or removing ops.

Does this incantation do the trick?

make opsrenumber && make realclean && perl Configure.pl --test=build

  Changed 5 years ago by whiteknight

  • status changed from new to closed
  • resolution set to fixed

Okay, I fixed this and verified that the tests now pass for me too. Committed in r40305. Let me know if there are any other issues.

Note: See TracTickets for help on using tickets.