Commit Graph

48 Commits

Author SHA1 Message Date
Alexander Steffen fa4ce38d77 Execute test commands always with shell
There is no need to handle tests on Windows and Unix differently here.
Always using a shell allows for more flexibility when writing tests.

(rebased by hassec)
2021-06-02 21:21:35 +02:00
LeoHsiao 0c7d231752 let make python_tests runs in verbose mode 2020-10-22 19:23:51 +08:00
LeoHsiao 3aedb60513 Support variables: DYLD_LIBRARY_PATH, LD_LIBRARY_PATH 2020-10-21 20:58:51 +08:00
LeoHsiao ded2b3c9a3 Support to display the command to execute 2020-10-21 20:45:13 +08:00
LeoHsiao 5e11376609 Supports setting EXIV2_HTTP or EXIV2_PORT to '' to ignore HTTP test 2020-10-18 21:07:35 +08:00
Miloš Komarčević 92fbfc9f7f Remove remaining vestiges of binary_extension 2020-09-10 12:05:46 +02:00
LeoHsiao 63b074d690 Deprecated Config.exiv2_ext 2020-09-06 13:11:20 +08:00
LeoHsiao caa1acf197 Adjust the format of the command on Windows 2020-09-03 22:29:20 +08:00
LeoHsiao c7bf5dd12a Adjust line breaks, binary extension on Windows 2020-09-02 23:07:57 +08:00
LeoHsiao 7fc960c520 Add environment variables: EXIV2_HTTP, EXIV2_PORT 2020-09-01 23:19:11 +08:00
LeoHsiao ca06206f50 Rename class 'Conf' to 'Config' 2020-08-27 20:40:34 +08:00
LeoHsiao 6f6699c043 Optimize Conf.init() in bash_tests.utils 2020-08-22 15:07:10 +08:00
LeoHsiao f909fac802 Rename bash_tests.utils as BT 2020-08-22 10:00:14 +08:00
LeoHsiao d916a60341 Optimize class 'Log' and add class 'Conf' 2020-08-21 21:38:40 +08:00
LeoHsiao 6773c6c74b Rename bash_test to bash_tests 2020-08-12 20:24:39 +08:00
LeoHsiao ce2cb73654 Let bash_test read the configuration parameters from suite.conf 2020-08-10 22:54:54 +08:00
LeoHsiao 15c0366087 Rename unit_test and import it in system_tests.py 2020-08-10 21:45:53 +08:00
clanmills 089b37a637 make python_tests is with python 3.8 (on several platforms) says "This function reads ..." on every test! 2020-05-06 09:04:23 +01:00
clanmills fd76cdbdeb Simplified CopyTmpFiles.setUp_file_action() by using _config_variables['tmp_path'] 2020-04-26 11:42:40 +01:00
clanmills 00d89e6523 configure_suite() calls mkdir($tmp_path) if necessary 2020-04-26 09:53:20 +01:00
clanmills 92f2458229 fix_1180_date_separator 2020-04-25 14:31:26 +01:00
Robin Mills 2850c1e1e2 Fix typo. 2020-04-09 20:52:38 +01:00
Robin Mills 377395a2d6 fix_1146_0.27 2020-04-09 17:46:49 +01:00
Dan Čermák 03799c75e1 [testsuite] Add support for binary output to check_no_ASAN_UBSAN_errors 2018-09-13 11:18:29 +02:00
Dan Čermák ed28e15152 [testsuite] Add option to run all commands under valgrind 2018-08-30 16:26:56 +02:00
Dan Čermák 992877bb39 [testsuite] Implement the supplying of stdin to commands 2018-08-30 16:26:56 +02:00
Dan Čermák 9cfcfb98a2 [testsuite] Add feature to set environment variables 2018-08-30 12:33:31 +02:00
Dan Čermák 4f8c150582 [testsuite] Added binary output checking to the test suite 2018-08-30 12:33:16 +02:00
Dan Čermák bf50b582cb [testsuite] Improve PEP8 compliance 2018-08-27 23:28:11 +02:00
Dan Čermák deb9c23df8 [testsuite] Add option to run tests from a single file only 2018-08-27 23:28:03 +02:00
Dan Čermák 35e7037f86 [testsuite] Change the calling order of setUp & tearDown in decorator
The FileDecoratorBase injects a new setUp & tearDown function. These new
functions would call the old setUp & tearDown in an inconvenient order: e.g. the
child class CopyFiles would at first call the user provided setUp and then copy
the files. This makes it impossible to perform some action on the file copy in
setUp.
=> This commit changes the call order, so that setUp & tearDown always "see" the
finished environment after file copies are in place and before any cleanup took
place.
2018-06-06 13:59:45 +02:00
Dan Čermák 41ac25c4f4 [testsuite] Add hooks & documentation for hooks 2018-05-29 10:21:13 +02:00
Dan Čermák 53c265f8a7 [testsuite] Add path conversion function 2018-05-29 10:21:13 +02:00
Dan Čermák 300b1dc0ef [testsuite] Testsuite injects config file values into its namespace 2018-05-29 10:21:13 +02:00
Dan Čermák 90c8d754b7 [testsuite] Call subprocess.Popen() with shell=True on Windows 2018-05-24 11:06:18 +02:00
Dan Čermák 939ded283f [testsuite] check stderr before stdout
That way you get to see error messages about wrong filenames instead of an
empty stdout
2018-05-24 11:06:18 +02:00
Dan Čermák b364e075c6 [testsuite] Implement DeleteFiles decorator
- Refactor FileDecoratorBase to use an arbitrary property in the decorated
  class where the list of files is saved
- Add DeleteFiles decorator which deletes all files passed to it after the test
  finished
2018-04-25 09:41:50 +02:00
Dan Čermák d1714f6564 [testsuite] Fix typo and obsolete syntax 2018-04-25 09:35:42 +02:00
Dan Čermák fe98936375 [testsuite] Fixed infinite iteration in CaseMeta.__new__
The loop condition in the variable expansion loop was faulty and caused an
infinite loop when no change occured (i.e. no variables were expanded)
2018-04-25 09:35:42 +02:00
Dan Čermák 740e4ecad1 [testsuite] Improve output in case of errors
use the msg= option of unittest.assertXyz() to improve the error
reporting
2018-04-23 10:47:52 +02:00
Dan Čermák b6d93558ee [testsuite] Added option to use different encodings for the output 2018-04-23 10:23:50 +02:00
Dan Čermák dd3bcaf41f [testsuite] Added check that test list have same length
commands, retval, stdout & stderr are lists
if they don't have the same length, they are truncated to the smallest list
thereby silently dropping test cases
=> now a ValueError is raised preventing that
2018-04-23 10:17:36 +02:00
Dan Čermák c40c90141f [testsuite] Add debug mode & search directory to runner 2018-04-23 10:17:36 +02:00
Dan Čermák bd9d085141 [testsuite] Refactor test suite to use metaclasses & template module
The testsuite now uses python's template module for string substitutions which
allows for a more natural substitution syntax known from the shell. Also, it
allows to run the substitutions multiple times, which is not possible with
string.format().
The heavy-lifting is now performed via a metaclass, which expands all variables
on the class creation.
2018-04-21 00:59:59 +02:00
Dan Čermák 4533d60e74 [testsuite] Added helper function for system_tests.Case.compare_stderr 2018-03-28 10:07:41 +02:00
Dan Čermák 02f60f11ae [testsuite] Reimplemented a part of system_tests.CopyFiles
- main file handling functionality is performed by a base class => can
  be easier extended if required
2018-03-28 10:07:41 +02:00
Dan Čermák a15f090f81 Modified test suite so that case sensitive keys are possible 2018-02-18 10:42:16 +01:00
Dan Čermák 2e745b0b26 Added replacement for the current regression test suite 2018-01-05 00:42:45 +01:00