[PATCH] run-tests: make --interactive work with --view
Angel Ezquerra
angel.ezquerra at gmail.com
Sun Aug 31 08:00:05 CDT 2014
On Sun, Aug 31, 2014 at 12:23 PM, Gregory Szorc <gregory.szorc at gmail.com> wrote:
> # HG changeset patch
> # User Gregory Szorc <gregory.szorc at gmail.com>
> # Date 1409480564 -7200
> # Sun Aug 31 12:22:44 2014 +0200
> # Node ID 493125924ae208e30c1938300cf2dabc24a8e70d
> # Parent 188b8aa2120b03eead618ba150319074f4e3b42b
> run-tests: make --interactive work with --view
>
> diff --git a/tests/run-tests.py b/tests/run-tests.py
> --- a/tests/run-tests.py
> +++ b/tests/run-tests.py
> @@ -1200,20 +1200,20 @@ class TestResult(unittest._TextTestResul
> for line in lines:
> self.stream.write(line)
> self.stream.flush()
>
> - # handle interactive prompt without releasing iolock
> - if self._options.interactive:
> - self.stream.write('Accept this change? [n] ')
> - answer = sys.stdin.readline().strip()
> - if answer.lower() in ('y', 'yes'):
> - if test.name.endswith('.t'):
> - rename(test.errpath, test.path)
> - else:
> - rename(test.errpath, '%s.out' % test.path)
> - accepted = True
> - if not accepted and not failed:
> - self.faildata[test.name] = ''.join(lines)
> + # handle interactive prompt without releasing iolock
> + if self._options.interactive:
> + self.stream.write('Accept this change? [n] ')
> + answer = sys.stdin.readline().strip()
> + if answer.lower() in ('y', 'yes'):
> + if test.name.endswith('.t'):
> + rename(test.errpath, test.path)
> + else:
> + rename(test.errpath, '%s.out' % test.path)
> + accepted = True
> + if not accepted and not failed:
> + self.faildata[test.name] = ''.join(lines)
> iolock.release()
>
> return accepted
>
> diff --git a/tests/test-run-tests.t b/tests/test-run-tests.t
> --- a/tests/test-run-tests.t
> +++ b/tests/test-run-tests.t
> @@ -250,8 +250,20 @@ Refuse the fix
> rataxes
> This is a noop statement so that
> this test is still more bytes than success.
>
> +Interactive with custom view
> +
> + $ echo 'n' | $TESTDIR/run-tests.py --with-hg=`which hg` -i --view echo
> + $TESTTMP/test-failure.t $TESTTMP/test-failure.t.err
> + Accept this change? [n]* (glob)
> + ERROR: test-failure.t output changed
> + !.
> + Failed test-failure.t: output changed
> + # Ran 2 tests, 0 skipped, 0 warned, 1 failed.
> + python hash seed: * (glob)
> + [1]
> +
> View the fix
>
> $ echo 'y' | $TESTDIR/run-tests.py --with-hg=`which hg` --view echo
> $TESTTMP/test-failure.t $TESTTMP/test-failure.t.err
The change seems fine, and it does fix the problem on my machine.
Cheers,
Angel
More information about the Mercurial-devel
mailing list