diff tests/test-context.py @ 14379:bd23d5f28bbb stable

changelog: convert user and desc from local encoding early Failing to do so makes it impossible to use the memctx API to create a changeset with a commit message or username outside of the current encoding.encoding setting.
author Martin Geisler <mg@aragost.com>
date Thu, 19 May 2011 18:09:25 +0200
parents a1aad8333864
children 503bb3af70fe
line wrap: on
line diff
--- a/tests/test-context.py	Wed May 18 15:13:26 2011 +0200
+++ b/tests/test-context.py	Thu May 19 18:09:25 2011 +0200
@@ -1,5 +1,5 @@
 import os
-from mercurial import hg, ui
+from mercurial import hg, ui, context, encoding
 
 u = ui.ui()
 
@@ -17,3 +17,16 @@
 repo.commit(text='commit1', date="0 0")
 
 print "workingfilectx.date =", repo[None]['foo'].date()
+
+# test memctx with non-ASCII commit message
+
+def filectxfn(repo, memctx, path):
+    return context.memfilectx("foo", "")
+
+ctx = context.memctx(repo, ['tip', None],
+                     encoding.tolocal("Gr\xc3\xbcezi!"),
+                     ["foo"], filectxfn)
+ctx.commit()
+for enc in "ASCII", "Latin-1", "UTF-8":
+    encoding.encoding = enc
+    print "%-8s: %s" % (enc, repo["tip"].description())