Thu, 13 Oct 2011 04:27:49 +0200 tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com> [Thu, 13 Oct 2011 04:27:49 +0200] rev 15244
tests: cleanup of test-fetch.t
Thu, 13 Oct 2011 04:27:49 +0200 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com> [Thu, 13 Oct 2011 04:27:49 +0200] rev 15243
tests: cleanup of echo statements left over from test conversion
Wed, 12 Oct 2011 18:59:59 -0500 graft: add examples and information about copied metadata
Matt Mackall <mpm@selenic.com> [Wed, 12 Oct 2011 18:59:59 -0500] rev 15242
graft: add examples and information about copied metadata
Wed, 12 Oct 2011 18:48:57 -0500 graft: add --continue support
Matt Mackall <mpm@selenic.com> [Wed, 12 Oct 2011 18:48:57 -0500] rev 15241
graft: add --continue support
Wed, 12 Oct 2011 18:46:23 -0500 graft: add user, date, and tool options
Matt Mackall <mpm@selenic.com> [Wed, 12 Oct 2011 18:46:23 -0500] rev 15240
graft: add user, date, and tool options
Wed, 12 Oct 2011 18:46:03 -0500 graft: add --edit
Matt Mackall <mpm@selenic.com> [Wed, 12 Oct 2011 18:46:03 -0500] rev 15239
graft: add --edit
Wed, 12 Oct 2011 18:45:36 -0500 graft: add initial implementation
Matt Mackall <mpm@selenic.com> [Wed, 12 Oct 2011 18:45:36 -0500] rev 15238
graft: add initial implementation
Wed, 12 Oct 2011 11:09:57 -0500 bookmarks: delegate writing to the repo just like reading
Augie Fackler <durin42@gmail.com> [Wed, 12 Oct 2011 11:09:57 -0500] rev 15237
bookmarks: delegate writing to the repo just like reading This makes it easier for alternate storage backends to not use flat files for bookmarks storage.
Wed, 12 Oct 2011 22:01:14 +0200 tests: add support for inline doctests in test files
Idan Kamara <idankk86@gmail.com> [Wed, 12 Oct 2011 22:01:14 +0200] rev 15236
tests: add support for inline doctests in test files This adds doctest like syntax to .t files, that can be interleaved with regular shell code: $ echo -n a > file >>> print open('file').read() a >>> open('file', 'a').write('b') $ cat file ab The syntax is exactly the same as regular doctests, so multiline statements look like this: >>> for i in range(3): ... print i 0 1 2 Each block has its own context, i.e.: >>> x = 0 >>> print x 0 $ echo 'foo' foo >>> print x will result in a NameError. Errors are displayed in standard doctest format: >>> print 'foo' bar --- /home/idan/dev/hg/default/tests/test-test.t +++ /home/idan/dev/hg/default/tests/test-test.t.err @@ -2,3 +2,16 @@ > >>> print 'foo' > bar > EOF + ********************************************************************** + File "/tmp/tmps8X_0ohg-tst", line 1, in tmps8X_0ohg-tst + Failed example: + print 'foo' + Expected: + bar + Got: + foo + ********************************************************************** + 1 items had failures: + 1 of 1 in tmps8X_0ohg-tst + ***Test Failed*** 1 failures. + [1] As for the implementation, it's quite simple: when the test runner sees a line starting with '>>>' it converts it, and all subsequent lines until the next line that begins with '$' to a 'python -m heredoctest <<EOF' call with the proper heredoc to follow. So if we have this test file: >>> for c in 'abcd': ... print c a b c d $ echo foo foo It gets converted to: $ python -m heredoctest <<EOF > >>> for c in 'abcd': > ... print c > a > b > c > d > EOF $ echo foo foo And then processed like every other test file by converting it to a sh script.
Wed, 12 Oct 2011 22:01:13 +0200 tests: add helper script for processing doctests read from stdin
Idan Kamara <idankk86@gmail.com> [Wed, 12 Oct 2011 22:01:13 +0200] rev 15235
tests: add helper script for processing doctests read from stdin Writes stdin to a temp file and doctests it. In the future we might want to spare the temp file and directly call into doctest. Also, with some tweaking it seems possible to adjust the line numbers reported in an error report so they match the ones in the original file.
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 +30000 tip