changeset 35200:073843b5e353

run-tests: make --extra-config-opt work with Python 3 And add test coverage to ensure it works. Differential Revision: https://phab.mercurial-scm.org/D1476
author Gregory Szorc <gregory.szorc@gmail.com>
date Mon, 20 Nov 2017 21:26:11 -0800
parents d997b82152e8
children bd8875b6473c
files tests/run-tests.py tests/test-run-tests.t
diffstat 2 files changed, 14 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/tests/run-tests.py	Mon Nov 20 21:08:18 2017 -0800
+++ b/tests/run-tests.py	Mon Nov 20 21:26:11 2017 -0800
@@ -1105,9 +1105,9 @@
         hgrc.write(b'ipv6 = %s\n' % str(self._useipv6).encode('ascii'))
 
         for opt in self._extraconfigopts:
-            section, key = opt.split('.', 1)
-            assert '=' in key, ('extra config opt %s must '
-                                'have an = for assignment' % opt)
+            section, key = opt.encode('utf-8').split(b'.', 1)
+            assert b'=' in key, ('extra config opt %s must '
+                                 'have an = for assignment' % opt)
             hgrc.write(b'[%s]\n%s\n' % (section, key))
         hgrc.close()
 
--- a/tests/test-run-tests.t	Mon Nov 20 21:08:18 2017 -0800
+++ b/tests/test-run-tests.t	Mon Nov 20 21:26:11 2017 -0800
@@ -1566,3 +1566,14 @@
   # Ran 1 tests, 0 skipped, 1 failed.
   python hash seed: * (glob)
   [1]
+
+--extra-config-opt works
+
+  $ cat << EOF >> test-config-opt.t
+  >   $ hg init test-config-opt
+  >   $ hg -R test-config-opt purge
+  > EOF
+
+  $ rt --extra-config-opt extensions.purge= test-config-opt.t
+  .
+  # Ran 1 tests, 0 skipped, 0 failed.