changeset 10838:07dbafd3a0e2 stable

add a test for the inprocess status dirstate race
author Ronny Pfannschmidt <Ronny.Pfannschmidt@gmx.de>
date Mon, 05 Apr 2010 20:10:46 +0200
parents e5aaa4543289
children 31e29566f3b5 36cec3184612 60b42f318a6d
files tests/test-status-inprocess.py tests/test-status-inprocess.py.out
diffstat 2 files changed, 37 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-status-inprocess.py	Mon Apr 05 20:10:46 2010 +0200
@@ -0,0 +1,32 @@
+#!/usr/bin/python
+import os
+from mercurial.ui import ui
+from mercurial.localrepo import localrepository
+from mercurial.commands import add, commit, status
+
+u = ui()
+
+print '% creating repo'
+repo = localrepository(u, '.', create=True)
+
+f = open('test.py', 'w')
+try:
+    f.write('foo\n')
+finally:
+    f.close
+
+print '% add and commit'
+add(u, repo, 'test.py')
+commit(u, repo, message='*')
+status(u, repo, clean=True)
+
+
+print '% change'
+f = open('test.py', 'w')
+try:
+    f.write('bar\n')
+finally:
+    f.close()
+
+# this would return clean instead of changed before the fix
+status(u, repo, clean=True, modified=True)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-status-inprocess.py.out	Mon Apr 05 20:10:46 2010 +0200
@@ -0,0 +1,5 @@
+% creating repo
+% add and commit
+C test.py
+% change
+M test.py