tests: add `test_toolcontext`
authorAlexandre Terrasa <alexandre@moz-code.org>
Wed, 23 Jul 2014 17:28:33 +0000 (13:28 -0400)
committerAlexandre Terrasa <alexandre@moz-code.org>
Wed, 23 Jul 2014 17:28:33 +0000 (13:28 -0400)
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

src/test_toolcontext.nit [new file with mode: 0644]
tests/sav/test_toolcontext.res [new file with mode: 0644]
tests/sav/test_toolcontext_args1.res [new file with mode: 0644]
tests/sav/test_toolcontext_args2.res [new file with mode: 0644]
tests/sav/test_toolcontext_args3.res [new file with mode: 0644]
tests/test_toolcontext.args [new file with mode: 0644]

diff --git a/src/test_toolcontext.nit b/src/test_toolcontext.nit
new file mode 100644 (file)
index 0000000..922a783
--- /dev/null
@@ -0,0 +1,35 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Program used to test `ToolContext`
+module test_toolcontext
+
+import toolcontext
+
+redef class ToolContext
+       var opt_a = new OptionBool("option a, do nothing", "-a", "--option-a")
+       var opt_b = new OptionString("option b, do nothing", "-b", "--option-b")
+       var opt_c = new OptionBool("option c, do nothing", "-c")
+
+       redef init do
+               super
+               option_context.add_option(opt_a, opt_b, opt_c)
+       end
+end
+
+var toolcontext = new ToolContext
+toolcontext.tooldescription = "Usage: test_toolcontext [OPTION]...\nTest for ToolContext, try --bash-completion."
+toolcontext.process_options(args)
+print toolcontext.option_context.rest
+
diff --git a/tests/sav/test_toolcontext.res b/tests/sav/test_toolcontext.res
new file mode 100644 (file)
index 0000000..a89ddc4
--- /dev/null
@@ -0,0 +1,3 @@
+Usage: test_toolcontext [OPTION]...
+Test for ToolContext, try --bash-completion.
+Use --help for help
diff --git a/tests/sav/test_toolcontext_args1.res b/tests/sav/test_toolcontext_args1.res
new file mode 100644 (file)
index 0000000..df03503
--- /dev/null
@@ -0,0 +1,16 @@
+# generated bash completion file for DUMMY_TOOL DUMMY_VERSION
+_DUMMY_TOOL()
+{
+       local cur prev opts
+       COMPREPLY=()
+       cur="${COMP_WORDS[COMP_CWORD]}"
+       prev="${COMP_WORDS[COMP_CWORD-1]}"
+       opts="--warn --quiet --stop-on-first-error --no-color --log --log-dir --help --version --set-dummy-tool --verbose --bash-completion --option-a --option-b"
+       if [[ ${cur} == -* ]] ; then
+               COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+               return 0
+       fi
+  _filedir
+}
+complete -F _DUMMY_TOOL DUMMY_TOOL
+
diff --git a/tests/sav/test_toolcontext_args2.res b/tests/sav/test_toolcontext_args2.res
new file mode 100644 (file)
index 0000000..6d772d7
--- /dev/null
@@ -0,0 +1,16 @@
+Usage: test_toolcontext [OPTION]...
+Test for ToolContext, try --bash-completion.
+  -W, --warn              Show warnings
+  -q, --quiet             Do not show warnings
+  --stop-on-first-error   Stop on first error
+  --no-color              Do not use color to display errors and warnings
+  --log                   Generate various log files
+  --log-dir               Directory where to generate log files
+  -h, -?, --help          Show Help (This screen)
+  --version               Show version and exit
+  --set-dummy-tool        Set toolname and version to DUMMY. Useful for testing
+  -v, --verbose           Verbose
+  --bash-completion       Generate bash_completion file for this program
+  -a, --option-a          option a, do nothing
+  -b, --option-b          option b, do nothing
+  -c                      option c, do nothing
diff --git a/tests/sav/test_toolcontext_args3.res b/tests/sav/test_toolcontext_args3.res
new file mode 100644 (file)
index 0000000..6edc6ad
--- /dev/null
@@ -0,0 +1 @@
+DUMMY_VERSION
diff --git a/tests/test_toolcontext.args b/tests/test_toolcontext.args
new file mode 100644 (file)
index 0000000..d7677ca
--- /dev/null
@@ -0,0 +1,3 @@
+--bash-completion --set-dummy-tool
+--help
+--version --set-dummy-tool