texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

branch master updated: * tp/t/57invalid_nestings.t: add tests of section


From: Patrice Dumas
Subject: branch master updated: * tp/t/57invalid_nestings.t: add tests of section command interrupting block command lines that requires gathering tree information, section_on_multitable_line, section_on_float_line, section_on_enumerate_line, section_on_xtable_line, and section_on_itemize_line.
Date: Sun, 04 Dec 2022 17:25:09 -0500

This is an automated email from the git hooks/post-receive script.

pertusus pushed a commit to branch master
in repository texinfo.

The following commit(s) were added to refs/heads/master by this push:
     new d94777f3b6 * tp/t/57invalid_nestings.t: add tests of section command 
interrupting block command lines that requires gathering tree information, 
section_on_multitable_line, section_on_float_line, section_on_enumerate_line, 
section_on_xtable_line, and section_on_itemize_line.
d94777f3b6 is described below

commit d94777f3b626884717756a6f0775a91357323569
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Sun Dec 4 23:24:56 2022 +0100

    * tp/t/57invalid_nestings.t: add tests of section command interrupting
    block command lines that requires gathering tree information,
    section_on_multitable_line, section_on_float_line,
    section_on_enumerate_line, section_on_xtable_line,
    and section_on_itemize_line.
---
 ChangeLog                                          |   8 +
 tp/t/57invalid_nestings.t                          |  33 ++
 .../invalid_nestings/section_on_enumerate_line.pl  | 264 +++++++++++
 .../invalid_nestings/section_on_float_line.pl      | 186 ++++++++
 .../invalid_nestings/section_on_itemize_line.pl    | 503 ++++++++++++++++++++
 .../invalid_nestings/section_on_multitable_line.pl | 427 +++++++++++++++++
 .../invalid_nestings/section_on_xtable_line.pl     | 523 +++++++++++++++++++++
 7 files changed, 1944 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index f1d357c190..c28049a790 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2022-12-04  Patrice Dumas  <pertusus@free.fr>
+
+       * tp/t/57invalid_nestings.t: add tests of section command interrupting
+       block command lines that requires gathering tree information,
+       section_on_multitable_line, section_on_float_line,
+       section_on_enumerate_line, section_on_xtable_line,
+       and section_on_itemize_line.
+
 2022-12-04  Patrice Dumas  <pertusus@free.fr>
 
        Gather tree information when closing incorrectly nested block command 
line
diff --git a/tp/t/57invalid_nestings.t b/tp/t/57invalid_nestings.t
index ee96ba3c2b..f4b010a226 100644
--- a/tp/t/57invalid_nestings.t
+++ b/tp/t/57invalid_nestings.t
@@ -560,6 +560,39 @@ Something
 
 @end deffn
 '],
+['section_on_multitable_line',
+'@multitable @section first
+
+@multitable @code{this} @section second
+
+@multitable {aaa} {bbb} @section third
+'],
+['section_on_float_line',
+'@float t, l @section first
+'],
+['section_on_enumerate_line',
+'@enumerate something @section first
+
+@enumerate 4 @section second
+'],
+['section_on_xtable_line',
+'@vtable @section first
+
+@table @TeX @section second
+
+@table @code @section third
+
+@ftable @ringaccent @section fourth
+'],
+['section_on_itemize_line',
+'@itemize @minus{} @section first
+
+@itemize @minus{} aa @section second
+
+@itemize @section third
+
+@itemize @ringaccent @section fourth
+'],
 );
 
 foreach my $test (@formatted_cases) {
diff --git a/tp/t/results/invalid_nestings/section_on_enumerate_line.pl 
b/tp/t/results/invalid_nestings/section_on_enumerate_line.pl
new file mode 100644
index 0000000000..94bad9976a
--- /dev/null
+++ b/tp/t/results/invalid_nestings/section_on_enumerate_line.pl
@@ -0,0 +1,264 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'section_on_enumerate_line'} = {
+  'contents' => [
+    {
+      'contents' => [
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'text' => 'something'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'enumerate',
+          'extra' => {
+            'enumerate_specification' => '1'
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          }
+        }
+      ],
+      'type' => 'before_node_section'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'first'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'text' => '4'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'enumerate',
+          'extra' => {
+            'enumerate_specification' => '4'
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 3,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'second'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 3,
+        'macro' => ''
+      }
+    }
+  ],
+  'type' => 'document_root'
+};
+
+$result_texis{'section_on_enumerate_line'} = '@enumerate something @section 
first
+
+@enumerate 4 @section second
+';
+
+
+$result_texts{'section_on_enumerate_line'} = '1 first
+=======
+
+2 second
+========
+';
+
+$result_sectioning{'section_on_enumerate_line'} = {
+  'structure' => {
+    'section_childs' => [
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 1,
+          'section_up' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 2,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      }
+    ],
+    'section_level' => 1
+  }
+};
+$result_sectioning{'section_on_enumerate_line'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_enumerate_line'};
+$result_sectioning{'section_on_enumerate_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_enumerate_line'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'section_on_enumerate_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_enumerate_line'};
+$result_sectioning{'section_on_enumerate_line'}{'structure'}{'section_childs'}[1]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_enumerate_line'}{'structure'}{'section_childs'}[0];
+
+$result_errors{'section_on_enumerate_line'} = [
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @enumerate
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should not appear in @enumerate',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'bad argument to @enumerate
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'bad argument to @enumerate',
+    'type' => 'error'
+  },
+  {
+    'error_line' => '@section seen before @end enumerate
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section seen before @end enumerate',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @enumerate
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should not appear in @enumerate',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end enumerate
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section seen before @end enumerate',
+    'type' => 'error'
+  }
+];
+
+
+$result_floats{'section_on_enumerate_line'} = {};
+
+
+
+$result_converted{'plaintext'}->{'section_on_enumerate_line'} = '1 first
+=======
+
+2 second
+========
+
+';
+
+
+$result_converted{'xml'}->{'section_on_enumerate_line'} = '<enumerate 
first="1" spaces=" "><enumeratefirst>something </enumeratefirst></enumerate>
+<section spaces=" "><sectiontitle>first</sectiontitle>
+
+<enumerate first="4" spaces=" "><enumeratefirst>4 </enumeratefirst></enumerate>
+</section>
+<section spaces=" "><sectiontitle>second</sectiontitle>
+</section>
+';
+
+1;
diff --git a/tp/t/results/invalid_nestings/section_on_float_line.pl 
b/tp/t/results/invalid_nestings/section_on_float_line.pl
new file mode 100644
index 0000000000..601284d79d
--- /dev/null
+++ b/tp/t/results/invalid_nestings/section_on_float_line.pl
@@ -0,0 +1,186 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'section_on_float_line'} = {
+  'contents' => [
+    {
+      'contents' => [
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'text' => 't'
+                }
+              ],
+              'type' => 'block_line_arg'
+            },
+            {
+              'contents' => [
+                {
+                  'text' => 'l'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' ',
+                'spaces_before_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'float',
+          'extra' => {
+            'node_content' => [
+              {}
+            ],
+            'normalized' => 'l',
+            'type' => {
+              'content' => [
+                {}
+              ],
+              'normalized' => 't'
+            }
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          }
+        }
+      ],
+      'type' => 'before_node_section'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'first'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      }
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'section_on_float_line'}{'contents'}[0]{'contents'}[0]{'extra'}{'node_content'}[0]
 = 
$result_trees{'section_on_float_line'}{'contents'}[0]{'contents'}[0]{'args'}[1]{'contents'}[0];
+$result_trees{'section_on_float_line'}{'contents'}[0]{'contents'}[0]{'extra'}{'type'}{'content'}[0]
 = 
$result_trees{'section_on_float_line'}{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
+
+$result_texis{'section_on_float_line'} = '@float t, l @section first
+';
+
+
+$result_texts{'section_on_float_line'} = 't, l
+1 first
+=======
+';
+
+$result_sectioning{'section_on_float_line'} = {
+  'structure' => {
+    'section_childs' => [
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 1,
+          'section_up' => {}
+        }
+      }
+    ],
+    'section_level' => 1
+  }
+};
+$result_sectioning{'section_on_float_line'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_float_line'};
+
+$result_errors{'section_on_float_line'} = [
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @float
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should not appear in @float',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end float
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section seen before @end float',
+    'type' => 'error'
+  }
+];
+
+
+$result_floats{'section_on_float_line'} = {
+  't' => [
+    {
+      'cmdname' => 'float',
+      'extra' => {
+        'normalized' => 'l',
+        'type' => {
+          'content' => [
+            {
+              'text' => 't'
+            }
+          ],
+          'normalized' => 't'
+        }
+      },
+      'info' => {},
+      'structure' => {
+        'float_number' => 1
+      }
+    }
+  ]
+};
+
+
+
+$result_converted{'plaintext'}->{'section_on_float_line'} = 't 1
+1 first
+=======
+
+';
+
+
+$result_converted{'xml'}->{'section_on_float_line'} = '<float name="l" 
type="t" number="1" spaces=" "><floattype>t</floattype><floatname spaces=" ">l 
</floatname></float>
+<section spaces=" "><sectiontitle>first</sectiontitle>
+</section>
+';
+
+1;
diff --git a/tp/t/results/invalid_nestings/section_on_itemize_line.pl 
b/tp/t/results/invalid_nestings/section_on_itemize_line.pl
new file mode 100644
index 0000000000..b464a7a49d
--- /dev/null
+++ b/tp/t/results/invalid_nestings/section_on_itemize_line.pl
@@ -0,0 +1,503 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'section_on_itemize_line'} = {
+  'contents' => [
+    {
+      'contents' => [
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'minus',
+                  'source_info' => {
+                    'file_name' => '',
+                    'line_nr' => 1,
+                    'macro' => ''
+                  },
+                  'type' => 'command_as_argument'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'itemize',
+          'extra' => {
+            'command_as_argument' => {}
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          }
+        }
+      ],
+      'type' => 'before_node_section'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'first'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'minus',
+                  'source_info' => {
+                    'file_name' => '',
+                    'line_nr' => 3,
+                    'macro' => ''
+                  }
+                },
+                {
+                  'text' => ' aa'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'itemize',
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 3,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'second'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'cmdname' => 'bullet',
+                  'type' => 'command_as_argument_inserted'
+                }
+              ],
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'itemize',
+          'extra' => {
+            'command_as_argument' => {}
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 5,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 3,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'third'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'cmdname' => 'ringaccent',
+                  'source_info' => {
+                    'file_name' => '',
+                    'line_nr' => 7,
+                    'macro' => ''
+                  },
+                  'type' => 'command_as_argument'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'itemize',
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 7,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 5,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'fourth'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 7,
+        'macro' => ''
+      }
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'section_on_itemize_line'}{'contents'}[0]{'contents'}[0]{'extra'}{'command_as_argument'}
 = 
$result_trees{'section_on_itemize_line'}{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'section_on_itemize_line'}{'contents'}[2]{'contents'}[1]{'extra'}{'command_as_argument'}
 = 
$result_trees{'section_on_itemize_line'}{'contents'}[2]{'contents'}[1]{'args'}[0]{'contents'}[0];
+
+$result_texis{'section_on_itemize_line'} = '@itemize @minus{} @section first
+
+@itemize @minus{} aa @section second
+
+@itemize @section third
+
+@itemize @ringaccent @section fourth
+';
+
+
+$result_texts{'section_on_itemize_line'} = '1 first
+=======
+
+2 second
+========
+
+3 third
+=======
+
+4 fourth
+========
+';
+
+$result_sectioning{'section_on_itemize_line'} = {
+  'structure' => {
+    'section_childs' => [
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 1,
+          'section_up' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 2,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 3,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 4,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      }
+    ],
+    'section_level' => 1
+  }
+};
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_itemize_line'};
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_itemize_line'};
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[1]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[2]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[1];
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[2]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_itemize_line'};
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[2]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[1];
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[3]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[2];
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[3]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_itemize_line'};
+$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[3]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_itemize_line'}{'structure'}{'section_childs'}[2];
+
+$result_errors{'section_on_itemize_line'} = [
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @itemize
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should not appear in @itemize',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end itemize
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section seen before @end itemize',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @itemize
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should not appear in @itemize',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end itemize
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section seen before @end itemize',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @itemize
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section should not appear in @itemize',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end itemize
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section seen before @end itemize',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @itemize
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => '@section should not appear in @itemize',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: accent command `@ringaccent\' not allowed as 
@itemize argument
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => 'accent command `@ringaccent\' not allowed as @itemize argument',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end itemize
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => '@section seen before @end itemize',
+    'type' => 'error'
+  }
+];
+
+
+$result_floats{'section_on_itemize_line'} = {};
+
+
+
+$result_converted{'plaintext'}->{'section_on_itemize_line'} = '1 first
+=======
+
+2 second
+========
+
+3 third
+=======
+
+4 fourth
+========
+
+';
+
+
+$result_converted{'xml'}->{'section_on_itemize_line'} = '<itemize 
commandarg="minus" spaces=" "><itemprepend>&minus; </itemprepend></itemize>
+<section spaces=" "><sectiontitle>first</sectiontitle>
+
+<itemize spaces=" "><itemprepend>&minus; aa </itemprepend></itemize>
+</section>
+<section spaces=" "><sectiontitle>second</sectiontitle>
+
+<itemize commandarg="bullet" spaces=" "><itemprepend><formattingcommand 
command="bullet" automatic="on"/></itemprepend></itemize>
+</section>
+<section spaces=" "><sectiontitle>third</sectiontitle>
+
+<itemize spaces=" "><itemprepend><accent type="ring"></accent> 
</itemprepend></itemize>
+</section>
+<section spaces=" "><sectiontitle>fourth</sectiontitle>
+</section>
+';
+
+1;
diff --git a/tp/t/results/invalid_nestings/section_on_multitable_line.pl 
b/tp/t/results/invalid_nestings/section_on_multitable_line.pl
new file mode 100644
index 0000000000..a46a17eace
--- /dev/null
+++ b/tp/t/results/invalid_nestings/section_on_multitable_line.pl
@@ -0,0 +1,427 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'section_on_multitable_line'} = {
+  'contents' => [
+    {
+      'contents' => [
+        {
+          'args' => [
+            {
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'multitable',
+          'extra' => {
+            'max_columns' => 0,
+            'prototypes' => []
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          }
+        }
+      ],
+      'type' => 'before_node_section'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'first'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'contents' => [
+                        {
+                          'text' => 'this'
+                        }
+                      ],
+                      'type' => 'brace_command_arg'
+                    }
+                  ],
+                  'cmdname' => 'code',
+                  'source_info' => {
+                    'file_name' => '',
+                    'line_nr' => 3,
+                    'macro' => ''
+                  }
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'multitable',
+          'extra' => {
+            'max_columns' => 0,
+            'prototypes' => []
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 3,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'second'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'contents' => [
+                    {
+                      'text' => 'aaa'
+                    }
+                  ],
+                  'type' => 'bracketed'
+                },
+                {
+                  'text' => ' '
+                },
+                {
+                  'contents' => [
+                    {
+                      'text' => 'bbb'
+                    }
+                  ],
+                  'type' => 'bracketed'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'multitable',
+          'extra' => {
+            'max_columns' => 2,
+            'prototypes' => [
+              {
+                'contents' => [
+                  {}
+                ],
+                'type' => 'bracketed_multitable_prototype'
+              },
+              {
+                'contents' => [
+                  {}
+                ],
+                'type' => 'bracketed_multitable_prototype'
+              }
+            ]
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 5,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 3,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'third'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 5,
+        'macro' => ''
+      }
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'section_on_multitable_line'}{'contents'}[2]{'contents'}[1]{'extra'}{'prototypes'}[0]{'contents'}[0]
 = 
$result_trees{'section_on_multitable_line'}{'contents'}[2]{'contents'}[1]{'args'}[0]{'contents'}[0]{'contents'}[0];
+$result_trees{'section_on_multitable_line'}{'contents'}[2]{'contents'}[1]{'extra'}{'prototypes'}[1]{'contents'}[0]
 = 
$result_trees{'section_on_multitable_line'}{'contents'}[2]{'contents'}[1]{'args'}[0]{'contents'}[2]{'contents'}[0];
+
+$result_texis{'section_on_multitable_line'} = '@multitable @section first
+
+@multitable @code{this} @section second
+
+@multitable {aaa} {bbb} @section third
+';
+
+
+$result_texts{'section_on_multitable_line'} = '1 first
+=======
+
+2 second
+========
+
+3 third
+=======
+';
+
+$result_sectioning{'section_on_multitable_line'} = {
+  'structure' => {
+    'section_childs' => [
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 1,
+          'section_up' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 2,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 3,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      }
+    ],
+    'section_level' => 1
+  }
+};
+$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_multitable_line'};
+$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_multitable_line'};
+$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[1]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[2]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[1];
+$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[2]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_multitable_line'};
+$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[2]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_multitable_line'}{'structure'}{'section_childs'}[1];
+
+$result_errors{'section_on_multitable_line'} = [
+  {
+    'error_line' => 'warning: @section should not appear in @multitable
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should not appear in @multitable',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: empty multitable
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'empty multitable',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end multitable
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section seen before @end multitable',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @multitable
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should not appear in @multitable',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: unexpected argument on @multitable line: 
@code{this}
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => 'unexpected argument on @multitable line: @code{this}',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: empty multitable
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => 'empty multitable',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end multitable
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section seen before @end multitable',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @multitable
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section should not appear in @multitable',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end multitable
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section seen before @end multitable',
+    'type' => 'error'
+  }
+];
+
+
+$result_floats{'section_on_multitable_line'} = {};
+
+
+
+$result_converted{'plaintext'}->{'section_on_multitable_line'} = '1 first
+=======
+
+2 second
+========
+
+3 third
+=======
+
+';
+
+
+$result_converted{'xml'}->{'section_on_multitable_line'} = '<multitable 
spaces=" ">
+</multitable>
+<section spaces=" "><sectiontitle>first</sectiontitle>
+
+<multitable spaces=" 
"><columnprototypes><columnprototype><code>this</code></columnprototype></columnprototypes></multitable>
+</section>
+<section spaces=" "><sectiontitle>second</sectiontitle>
+
+<multitable spaces=" "><columnprototypes><columnprototype 
bracketed="on">aaa</columnprototype> <columnprototype 
bracketed="on">bbb</columnprototype></columnprototypes></multitable>
+</section>
+<section spaces=" "><sectiontitle>third</sectiontitle>
+</section>
+';
+
+1;
diff --git a/tp/t/results/invalid_nestings/section_on_xtable_line.pl 
b/tp/t/results/invalid_nestings/section_on_xtable_line.pl
new file mode 100644
index 0000000000..fe00fe6f11
--- /dev/null
+++ b/tp/t/results/invalid_nestings/section_on_xtable_line.pl
@@ -0,0 +1,523 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'section_on_xtable_line'} = {
+  'contents' => [
+    {
+      'contents' => [
+        {
+          'args' => [
+            {
+              'cmdname' => 'asis',
+              'type' => 'command_as_argument_inserted'
+            },
+            {
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'vtable',
+          'extra' => {
+            'command_as_argument' => {}
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 1,
+            'macro' => ''
+          }
+        }
+      ],
+      'type' => 'before_node_section'
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'first'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'cmdname' => 'asis',
+              'type' => 'command_as_argument_inserted'
+            },
+            {
+              'contents' => [
+                {
+                  'cmdname' => 'TeX',
+                  'source_info' => {
+                    'file_name' => '',
+                    'line_nr' => 3,
+                    'macro' => ''
+                  },
+                  'type' => 'command_as_argument'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'table',
+          'extra' => {
+            'command_as_argument' => {}
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 3,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'second'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'cmdname' => 'code',
+                  'source_info' => {
+                    'file_name' => '',
+                    'line_nr' => 5,
+                    'macro' => ''
+                  },
+                  'type' => 'command_as_argument'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'table',
+          'extra' => {
+            'command_as_argument' => {}
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 5,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 3,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'third'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'contents' => [
+        {
+          'text' => '
+',
+          'type' => 'empty_line'
+        },
+        {
+          'args' => [
+            {
+              'cmdname' => 'asis',
+              'type' => 'command_as_argument_inserted'
+            },
+            {
+              'contents' => [
+                {
+                  'cmdname' => 'ringaccent',
+                  'source_info' => {
+                    'file_name' => '',
+                    'line_nr' => 7,
+                    'macro' => ''
+                  },
+                  'type' => 'command_as_argument'
+                }
+              ],
+              'info' => {
+                'spaces_after_argument' => ' '
+              },
+              'type' => 'block_line_arg'
+            }
+          ],
+          'cmdname' => 'ftable',
+          'extra' => {
+            'command_as_argument' => {}
+          },
+          'info' => {
+            'spaces_before_argument' => ' '
+          },
+          'source_info' => {
+            'file_name' => '',
+            'line_nr' => 7,
+            'macro' => ''
+          }
+        }
+      ],
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 5,
+        'macro' => ''
+      }
+    },
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'text' => 'fourth'
+            }
+          ],
+          'info' => {
+            'spaces_after_argument' => '
+'
+          },
+          'type' => 'line_arg'
+        }
+      ],
+      'cmdname' => 'section',
+      'info' => {
+        'spaces_before_argument' => ' '
+      },
+      'source_info' => {
+        'file_name' => '',
+        'line_nr' => 7,
+        'macro' => ''
+      }
+    }
+  ],
+  'type' => 'document_root'
+};
+$result_trees{'section_on_xtable_line'}{'contents'}[0]{'contents'}[0]{'extra'}{'command_as_argument'}
 = 
$result_trees{'section_on_xtable_line'}{'contents'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'section_on_xtable_line'}{'contents'}[1]{'contents'}[1]{'extra'}{'command_as_argument'}
 = 
$result_trees{'section_on_xtable_line'}{'contents'}[1]{'contents'}[1]{'args'}[0];
+$result_trees{'section_on_xtable_line'}{'contents'}[2]{'contents'}[1]{'extra'}{'command_as_argument'}
 = 
$result_trees{'section_on_xtable_line'}{'contents'}[2]{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'section_on_xtable_line'}{'contents'}[3]{'contents'}[1]{'extra'}{'command_as_argument'}
 = 
$result_trees{'section_on_xtable_line'}{'contents'}[3]{'contents'}[1]{'args'}[0];
+
+$result_texis{'section_on_xtable_line'} = '@vtable @section first
+
+@table @TeX @section second
+
+@table @code @section third
+
+@ftable @ringaccent @section fourth
+';
+
+
+$result_texts{'section_on_xtable_line'} = '1 first
+=======
+
+2 second
+========
+
+3 third
+=======
+
+4 fourth
+========
+';
+
+$result_sectioning{'section_on_xtable_line'} = {
+  'structure' => {
+    'section_childs' => [
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 1,
+          'section_up' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 2,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 3,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      },
+      {
+        'cmdname' => 'section',
+        'info' => {},
+        'structure' => {
+          'section_level' => 2,
+          'section_number' => 4,
+          'section_prev' => {},
+          'section_up' => {},
+          'toplevel_prev' => {}
+        }
+      }
+    ],
+    'section_level' => 1
+  }
+};
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_xtable_line'};
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[1]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_xtable_line'};
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[1]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[2]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[1];
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[2]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_xtable_line'};
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[2]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[1];
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[3]{'structure'}{'section_prev'}
 = 
$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[2];
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[3]{'structure'}{'section_up'}
 = $result_sectioning{'section_on_xtable_line'};
+$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[3]{'structure'}{'toplevel_prev'}
 = 
$result_sectioning{'section_on_xtable_line'}{'structure'}{'section_childs'}[2];
+
+$result_errors{'section_on_xtable_line'} = [
+  {
+    'error_line' => 'warning: @section should not appear in @vtable
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section should not appear in @vtable',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'vtable requires an argument: the formatter for @item
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => 'vtable requires an argument: the formatter for @item',
+    'type' => 'error'
+  },
+  {
+    'error_line' => '@section seen before @end vtable
+',
+    'file_name' => '',
+    'line_nr' => 1,
+    'macro' => '',
+    'text' => '@section seen before @end vtable',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @table
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section should not appear in @table',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'command @TeX not accepting argument in brace should not 
be on @table line
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => 'command @TeX not accepting argument in brace should not be on 
@table line',
+    'type' => 'error'
+  },
+  {
+    'error_line' => '@section seen before @end table
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@section seen before @end table',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @table
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section should not appear in @table',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end table
+',
+    'file_name' => '',
+    'line_nr' => 5,
+    'macro' => '',
+    'text' => '@section seen before @end table',
+    'type' => 'error'
+  },
+  {
+    'error_line' => 'warning: @section should only appear at the beginning of 
a line
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => '@section should only appear at the beginning of a line',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: @section should not appear in @ftable
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => '@section should not appear in @ftable',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => 'warning: accent command `@ringaccent\' not allowed as 
@ftable argument
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => 'accent command `@ringaccent\' not allowed as @ftable argument',
+    'type' => 'warning'
+  },
+  {
+    'error_line' => '@section seen before @end ftable
+',
+    'file_name' => '',
+    'line_nr' => 7,
+    'macro' => '',
+    'text' => '@section seen before @end ftable',
+    'type' => 'error'
+  }
+];
+
+
+$result_floats{'section_on_xtable_line'} = {};
+
+
+
+$result_converted{'plaintext'}->{'section_on_xtable_line'} = '1 first
+=======
+
+2 second
+========
+
+3 third
+=======
+
+4 fourth
+========
+
+';
+
+
+$result_converted{'xml'}->{'section_on_xtable_line'} = '<vtable 
commandarg="asis" spaces=" "></vtable>
+<section spaces=" "><sectiontitle>first</sectiontitle>
+
+<table commandarg="asis" spaces=" "> </table>
+</section>
+<section spaces=" "><sectiontitle>second</sectiontitle>
+
+<table commandarg="code" spaces=" "> </table>
+</section>
+<section spaces=" "><sectiontitle>third</sectiontitle>
+
+<ftable commandarg="asis" spaces=" "> </ftable>
+</section>
+<section spaces=" "><sectiontitle>fourth</sectiontitle>
+</section>
+';
+
+1;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]