Submitter | Gregory Szorc |
---|---|
Date | Aug. 31, 2014, 10:23 a.m. |
Message ID | <493125924ae208e30c19.1409480590@gps-mbp.local> |
Download | mbox | patch |
Permalink | /patch/5656/ |
State | Accepted |
Headers | show |
Comments
On Sun, Aug 31, 2014 at 12:23 PM, Gregory Szorc <gregory.szorc@gmail.com> wrote: > # HG changeset patch > # User Gregory Szorc <gregory.szorc@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
queued this, thanks On Aug 31, 2014, at 12:23 PM, Gregory Szorc <gregory.szorc@gmail.com> wrote: > # HG changeset patch > # User Gregory Szorc <gregory.szorc@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 > _______________________________________________ > Mercurial-devel mailing list > Mercurial-devel@selenic.com > http://selenic.com/mailman/listinfo/mercurial-devel
Patch
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