Ticket #2119 (closed bug: fixed)
t/tools/dev/headerizer/01_functions.t failure
| Reported by: | mikehh | Owned by: | jkeenan |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | testing | Version: | master |
| Severity: | medium | Keywords: | |
| Cc: | petdance, kid51 | Language: | |
| Patch status: | applied | Platform: |
Description (last modified by mikehh) (diff)
t/tools/dev/headerizer/01_functions.t - Failed test: 51
... not ok 51 - Got expected assert # Failed test 'Got expected assert' # at t/tools/dev/headerizer/01_functions.t line 471. ...
this appears to be the result of a change in an re in lib/Parrot/Headerizer/Functions.pm in commit b3b76526480e75fac566 by petdance on 2011-05-18 (currently line 455):
...
- if ( $arg =~ m{(ARGIN|ARGOUT|ARGMOD|ARGFREE_NOTNULL|NOTNULL)\((.+)\)} ) {
+ if ( $arg =~ m{(ARGIN|ARGOUT|ARGMOD|ARGFREE_NOTNULL|NOTNULL)\((.+?)\)} ) {
...
from the test line 459-471
@args = (
'ARGFREE_NOTNULL(( _abcDEF123 )())',
'PARROT_INTERP',
'ARGIN(Linked_List *list)',
'ARGIN(List_Item_Header *item)',
'SHIM_INTERP',
);
%asserts = map { $_ => 1 } asserts_from_args( @args );
is( keys %asserts, 4, "Got expected number of asserts" );
ok( exists $asserts{'PARROT_ASSERT_ARG(list)'}, "Got expected assert" );
ok( exists $asserts{'PARROT_ASSERT_ARG(item)'}, "Got expected assert" );
ok( exists $asserts{'PARROT_ASSERT_ARG(interp)'}, "Got expected assert" );
ok( exists $asserts{'PARROT_ASSERT_ARG(_abcDEF123)'}, "Got expected assert" );
the 'ARGFREE_NOTNULL(( _abcDEF123 )())' on line 460 gets returned as:
'PARROT_ASSERT_ARG(( _abcDEF123 )'
not 'PARROT_ASSERT_ARG(_abcDEF123)' as expected.
Note two parens and a space'(( ' not '(' and a space and single parens ' )' not ')'
Change History
Note: See
TracTickets for help on using
tickets.
