[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
texinfo/tp Texinfo/Parser.pm t/03coverage_brace...
From: |
Patrice Dumas |
Subject: |
texinfo/tp Texinfo/Parser.pm t/03coverage_brace... |
Date: |
Fri, 29 Oct 2010 21:43:25 +0000 |
CVSROOT: /sources/texinfo
Module name: texinfo
Changes by: Patrice Dumas <pertusus> 10/10/29 21:43:24
Modified files:
tp/Texinfo : Parser.pm
tp/t : 03coverage_braces.t 30sectioning.t
Added files:
tp/t/results/coverage_braces: space_in_anchor.pl
tp/t/results/sectioning: empty_anchor.pl empty_node.pl
Log message:
Isolate spaces in anchor (and in simple text commands).
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.123&r2=1.124
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/03coverage_braces.t?cvsroot=texinfo&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/30sectioning.t?cvsroot=texinfo&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/coverage_braces/space_in_anchor.pl?cvsroot=texinfo&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/sectioning/empty_anchor.pl?cvsroot=texinfo&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/sectioning/empty_node.pl?cvsroot=texinfo&rev=1.1
Patches:
Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.123
retrieving revision 1.124
diff -u -b -r1.123 -r1.124
--- Texinfo/Parser.pm 29 Oct 2010 21:20:25 -0000 1.123
+++ Texinfo/Parser.pm 29 Oct 2010 21:43:23 -0000 1.124
@@ -3071,7 +3071,8 @@
{'type' => 'empty_spaces_before_argument',
'text' => '' }
if ($brace_commands{$current->{'parent'}->{'cmdname'}}
- and
$brace_commands{$current->{'parent'}->{'cmdname'}} > 1);
+ and ($brace_commands{$current->{'parent'}->{'cmdname'}} >
1
+ or
$simple_text_commands{$current->{'parent'}->{'cmdname'}}));
}
print STDERR "OPENED address@hidden>{'parent'}->{'cmdname'},
remaining: $current->{'parent'}->{'remaining_args'}, "
.($current->{'type'} ? "type: $current->{'type'}" : '')."\n"
@@ -3110,7 +3111,8 @@
# first is the arg.
$self->_isolate_last_space($current)
if ($brace_commands{$current->{'parent'}->{'cmdname'}}
- and $brace_commands{$current->{'parent'}->{'cmdname'}} > 1);
+ and ($brace_commands{$current->{'parent'}->{'cmdname'}} > 1
+ or
$simple_text_commands{$current->{'parent'}->{'cmdname'}}));
print STDERR "CLOSING address@hidden>{'parent'}->{'cmdname'}\n" if
($self->{'debug'});
delete $current->{'parent'}->{'remaining_args'};
if ($current->{'parent'}->{'cmdname'} eq 'anchor') {
Index: t/03coverage_braces.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/03coverage_braces.t,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- t/03coverage_braces.t 25 Oct 2010 19:26:48 -0000 1.11
+++ t/03coverage_braces.t 29 Oct 2010 21:43:24 -0000 1.12
@@ -42,6 +42,9 @@
anchor}
'],
+['space_in_anchor',
+'@anchor{ anchor name }.
+'],
['anchor_not_closed',
'@anchor{my anchor
Index: t/30sectioning.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/30sectioning.t,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- t/30sectioning.t 28 Oct 2010 20:11:32 -0000 1.7
+++ t/30sectioning.t 29 Oct 2010 21:43:24 -0000 1.8
@@ -295,6 +295,15 @@
@contents
@bye
+'],
+['empty_node',
+'@node
+
address@hidden , next, prev, up
+'],
+['empty_anchor',
+'@anchor{}.
address@hidden }.
']
);
Index: t/results/coverage_braces/space_in_anchor.pl
===================================================================
RCS file: t/results/coverage_braces/space_in_anchor.pl
diff -N t/results/coverage_braces/space_in_anchor.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ t/results/coverage_braces/space_in_anchor.pl 29 Oct 2010 21:43:24
-0000 1.1
@@ -0,0 +1,65 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors
%results_indices);
+
+$result_trees{'space_in_anchor'} = {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => ' ',
+ 'type' => 'empty_spaces_before_argument'
+ },
+ {
+ 'parent' => {},
+ 'text' => 'anchor name'
+ },
+ {
+ 'parent' => {},
+ 'text' => ' ',
+ 'type' => 'spaces_at_end'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'anchor',
+ 'contents' => [],
+ 'parent' => {},
+ 'special' => {
+ 'normalized' => 'anchor-name'
+ }
+ },
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ }
+ ],
+ 'type' => 'text_root'
+};
+$result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1]{'parent'}
= $result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[2]{'parent'}
= $result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[0];
+$result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'space_in_anchor'}{'contents'}[0];
+$result_trees{'space_in_anchor'}{'contents'}[0]{'contents'}[1]{'parent'} =
$result_trees{'space_in_anchor'}{'contents'}[0];
+$result_trees{'space_in_anchor'}{'contents'}[0]{'parent'} =
$result_trees{'space_in_anchor'};
+
+$result_texis{'space_in_anchor'} = '@anchor{ anchor name }.
+';
+
+
+$result_texts{'space_in_anchor'} = '.
+';
+
+$result_errors{'space_in_anchor'} = [];
+
+
+1;
Index: t/results/sectioning/empty_anchor.pl
===================================================================
RCS file: t/results/sectioning/empty_anchor.pl
diff -N t/results/sectioning/empty_anchor.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ t/results/sectioning/empty_anchor.pl 29 Oct 2010 21:43:24 -0000
1.1
@@ -0,0 +1,92 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors
%results_indices);
+
+$result_trees{'empty_anchor'} = {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [],
+ 'parent' => {},
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'anchor',
+ 'contents' => [],
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => ' ',
+ 'type' => 'empty_spaces_before_argument'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'anchor',
+ 'contents' => [],
+ 'parent' => {}
+ },
+ {
+ 'parent' => {},
+ 'text' => '.
+'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'paragraph'
+ }
+ ],
+ 'type' => 'text_root'
+};
+$result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[0]{'args'}[0]{'parent'}
= $result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[0];
+$result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[0]{'parent'} =
$result_trees{'empty_anchor'}{'contents'}[0];
+$result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[1]{'parent'} =
$result_trees{'empty_anchor'}{'contents'}[0];
+$result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[2]{'args'}[0]{'parent'}
= $result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[2];
+$result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[2]{'parent'} =
$result_trees{'empty_anchor'}{'contents'}[0];
+$result_trees{'empty_anchor'}{'contents'}[0]{'contents'}[3]{'parent'} =
$result_trees{'empty_anchor'}{'contents'}[0];
+$result_trees{'empty_anchor'}{'contents'}[0]{'parent'} =
$result_trees{'empty_anchor'};
+
+$result_texis{'empty_anchor'} = '@anchor{}.
address@hidden }.
+';
+
+
+$result_texts{'empty_anchor'} = '.
+.
+';
+
+$result_errors{'empty_anchor'} = [
+ {
+ 'error_line' => ':1: Empty argument in @anchor
+',
+ 'file_name' => '',
+ 'line_nr' => 1,
+ 'macro' => '',
+ 'text' => 'Empty argument in @anchor',
+ 'type' => 'error'
+ },
+ {
+ 'error_line' => ':2: Empty argument in @anchor
+',
+ 'file_name' => '',
+ 'line_nr' => 2,
+ 'macro' => '',
+ 'text' => 'Empty argument in @anchor',
+ 'type' => 'error'
+ }
+];
+
+
+1;
Index: t/results/sectioning/empty_node.pl
===================================================================
RCS file: t/results/sectioning/empty_node.pl
diff -N t/results/sectioning/empty_node.pl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ t/results/sectioning/empty_node.pl 29 Oct 2010 21:43:24 -0000 1.1
@@ -0,0 +1,194 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors
%results_indices);
+
+$result_trees{'empty_node'} = {
+ 'contents' => [
+ {
+ 'contents' => [],
+ 'type' => 'text_root'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line_after_command'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'extra' => {
+ 'nodes_manuals' => [
+ undef
+ ]
+ },
+ 'line_nr' => {
+ 'file_name' => '',
+ 'line_nr' => 1,
+ 'macro' => ''
+ },
+ 'parent' => {}
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'parent' => {},
+ 'text' => ' ',
+ 'type' => 'empty_spaces_after_command'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ },
+ {
+ 'contents' => [
+ {
+ 'text' => ' ',
+ 'type' => 'empty_spaces_before_argument'
+ },
+ {
+ 'parent' => {},
+ 'text' => 'next'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ },
+ {
+ 'contents' => [
+ {
+ 'text' => ' ',
+ 'type' => 'empty_spaces_before_argument'
+ },
+ {
+ 'parent' => {},
+ 'text' => 'prev'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ },
+ {
+ 'contents' => [
+ {
+ 'text' => ' ',
+ 'type' => 'empty_spaces_before_argument'
+ },
+ {
+ 'parent' => {},
+ 'text' => 'up'
+ },
+ {
+ 'parent' => {},
+ 'text' => '
+',
+ 'type' => 'spaces_at_end'
+ }
+ ],
+ 'parent' => {},
+ 'type' => 'misc_line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'contents' => [],
+ 'extra' => {
+ 'nodes_manuals' => [
+ undef,
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'next'
+ },
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'prev'
+ },
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'up'
+ }
+ ]
+ },
+ 'line_nr' => {
+ 'file_name' => '',
+ 'line_nr' => 3,
+ 'macro' => ''
+ },
+ 'parent' => {}
+ }
+ ],
+ 'type' => 'document_root'
+};
+$result_trees{'empty_node'}{'contents'}[1]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'empty_node'}{'contents'}[1]{'args'}[0];
+$result_trees{'empty_node'}{'contents'}[1]{'args'}[0]{'parent'} =
$result_trees{'empty_node'}{'contents'}[1];
+$result_trees{'empty_node'}{'contents'}[1]{'contents'}[0]{'parent'} =
$result_trees{'empty_node'}{'contents'}[1];
+$result_trees{'empty_node'}{'contents'}[1]{'parent'} =
$result_trees{'empty_node'};
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[0]{'contents'}[0]{'parent'}
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[0];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[0]{'parent'} =
$result_trees{'empty_node'}{'contents'}[2];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[1]{'contents'}[1]{'parent'}
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[1];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[1]{'parent'} =
$result_trees{'empty_node'}{'contents'}[2];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[2]{'contents'}[1]{'parent'}
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[2];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[2]{'parent'} =
$result_trees{'empty_node'}{'contents'}[2];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[3]{'contents'}[1]{'parent'}
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[3];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[3]{'contents'}[2]{'parent'}
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[3];
+$result_trees{'empty_node'}{'contents'}[2]{'args'}[3]{'parent'} =
$result_trees{'empty_node'}{'contents'}[2];
+$result_trees{'empty_node'}{'contents'}[2]{'extra'}{'nodes_manuals'}[1]{'node_content'}[0]
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[1]{'contents'}[1];
+$result_trees{'empty_node'}{'contents'}[2]{'extra'}{'nodes_manuals'}[2]{'node_content'}[0]
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[2]{'contents'}[1];
+$result_trees{'empty_node'}{'contents'}[2]{'extra'}{'nodes_manuals'}[3]{'node_content'}[0]
= $result_trees{'empty_node'}{'contents'}[2]{'args'}[3]{'contents'}[1];
+$result_trees{'empty_node'}{'contents'}[2]{'parent'} =
$result_trees{'empty_node'};
+
+$result_texis{'empty_node'} = '@node
+
address@hidden , next, prev, up
+';
+
+
+$result_texts{'empty_node'} = '
+';
+
+$result_sectioning{'empty_node'} = {
+ 'text' => '_ROOT'
+};
+$result_errors{'empty_node'} = [
+ {
+ 'error_line' => ':1: Empty argument in @node
+',
+ 'file_name' => '',
+ 'line_nr' => 1,
+ 'macro' => '',
+ 'text' => 'Empty argument in @node',
+ 'type' => 'error'
+ },
+ {
+ 'error_line' => ':3: Empty argument in @node
+',
+ 'file_name' => '',
+ 'line_nr' => 3,
+ 'macro' => '',
+ 'text' => 'Empty argument in @node',
+ 'type' => 'error'
+ }
+];
+
+
+1;