]> ruderich.org/simon Gitweb - coloredstderr/coloredstderr.git/blobdiff - tests/test_environment.sh
Fix possible memory overwrite in init_from_environment().
[coloredstderr/coloredstderr.git] / tests / test_environment.sh
diff --git a/tests/test_environment.sh b/tests/test_environment.sh
new file mode 100755 (executable)
index 0000000..a530718
--- /dev/null
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+# Copyright (C) 2013  Simon Ruderich
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+test "x$srcdir" = x && srcdir=.
+. "$srcdir/lib.sh"
+
+# Test unexpected values for COLORED_STDERR_FDS environment variable.
+
+# Empty fields.
+fds=
+test_program          example example_environment_empty
+test_program_subshell example example_environment_empty
+fds=,,,
+test_program          example example_environment_empty
+test_program_subshell example example_environment_empty
+fds=,,,2
+test_program          example example_environment_empty
+test_program_subshell example example_environment_empty
+fds=2,,,
+test_program          example example_environment
+test_program_subshell example example_environment
+
+# Invalid fds.
+fds=-20,-30
+test_program          example example_environment_empty
+test_program_subshell example example_environment_empty
+fds=-20,-30,2,
+test_program          example example_environment
+test_program_subshell example example_environment
+fds=-20,-30,2,-1,
+test_program          example example_environment
+test_program_subshell example example_environment