Daniel Shahaf wrote on Tue, Jan 25, 2022 at 11:31:22 +0000: > The problem? run_svn()'s first parameter is a boolean. Passing an > expected error message or wc_dir to it doesn't have the expected > results. Most of the above uses are buggy or misleading. > > We should audit uses of run_svn() and related functions.
And afterwards, perhaps something like this: [[[ Index: subversion/tests/cmdline/svntest/main.py =================================================================== --- subversion/tests/cmdline/svntest/main.py (revision 1897453) +++ subversion/tests/cmdline/svntest/main.py (working copy) @@ -668,6 +668,9 @@ def run_command_stdin(command, error_expected, buf brief_command = ' '.join(((command,) + varargs)[:4]) + ' ...' raise Failure('Command failed: "' + brief_command + '"; exit code ' + str(exit_code)) + if error_expected and (not stderr_lines) and exit_code == 0: + raise Failure('Command unexpectedly succeeded: ' + + repr(brief_command) + '; exit code ' + str(exit_code)) return exit_code, \ filter_dbg(stdout_lines, binary_mode), \ ]]] Or perhaps assert that ERROR_EXPECTED is one of None/True/False.