diff --git a/test/functional/tools/composite_output.xml b/test/functional/tools/composite_output.xml
new file mode 100644
index 00000000000..bdc21159a28
--- /dev/null
+++ b/test/functional/tools/composite_output.xml
@@ -0,0 +1,24 @@
+
+ mkdir $output.extra_files_path; cp $input.extra_files_path/* $output.extra_files_path
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/functional/tools/multi_output.xml b/test/functional/tools/multi_output.xml
new file mode 100644
index 00000000000..85bc86daa1c
--- /dev/null
+++ b/test/functional/tools/multi_output.xml
@@ -0,0 +1,22 @@
+
+
+ echo "Hello" > $report;
+ echo "World" > '${__new_file_path__}/primary_${report.id}_moo_visible_?'
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/functional/tools/multi_page.xml b/test/functional/tools/multi_page.xml
new file mode 100644
index 00000000000..a9dc042586a
--- /dev/null
+++ b/test/functional/tools/multi_page.xml
@@ -0,0 +1,29 @@
+
+
+ ${p1} ${p2}
+
+ cat $config > $output
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/functional/tools/multi_select.xml b/test/functional/tools/multi_select.xml
new file mode 100644
index 00000000000..d1356157cae
--- /dev/null
+++ b/test/functional/tools/multi_select.xml
@@ -0,0 +1,29 @@
+
+ multi_select
+
+ ${select_ex}
+
+ cat $config > $output
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/functional/tools/samples_tool_conf.xml b/test/functional/tools/samples_tool_conf.xml
index 676a5e877f9..cc05026efb8 100644
--- a/test/functional/tools/samples_tool_conf.xml
+++ b/test/functional/tools/samples_tool_conf.xml
@@ -1,7 +1,12 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/test/functional/tools/simple_constructs.xml b/test/functional/tools/simple_constructs.xml
new file mode 100644
index 00000000000..b543af03a89
--- /dev/null
+++ b/test/functional/tools/simple_constructs.xml
@@ -0,0 +1,47 @@
+
+
+ echo "$p1.p1val" >> $out_file1;
+ echo "$booltest" >> $out_file1;
+ echo "$inttest" >> $out_file1;
+ echo "$floattest" >> $out_file1;
+ cat "$files[0].file" >> $out_file1;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+