Mercurial > hg
view tests/test-dirs.py @ 46374:e92ca942ddca
cext: add Python 3.10 support
* Replace "Py_TYPE(obj) = type;" with "Py_SET_TYPE(obj, type);"
* Add pythoncapi_compat.h header file to get Py_SET_TYPE() on Python
2.7-3.8. Header file added to mercurial/ and
contrib/python-zstandard/zstd/common/.
In Python 3.10, Py_TYPE(obj) must not longer be used as an l-value.
pythoncapi_compat.h comes from:
https://github.com/pythoncapi/pythoncapi_compat
Differential Revision: https://phab.mercurial-scm.org/D9825
author | Victor Stinner <vstinner@python.org> |
---|---|
date | Mon, 14 Dec 2020 10:44:29 +0100 |
parents | c21aca51b392 |
children | 627cd8f33db0 |
line wrap: on
line source
from __future__ import absolute_import import unittest import silenttestrunner from mercurial import pathutil class dirstests(unittest.TestCase): def testdirs(self): for case, want in [ (b'a/a/a', [b'a', b'a/a', b'']), (b'alpha/beta/gamma', [b'', b'alpha', b'alpha/beta']), ]: d = pathutil.dirs({}) d.addpath(case) self.assertEqual(sorted(d), sorted(want)) def testinvalid(self): with self.assertRaises(ValueError): d = pathutil.dirs({}) d.addpath(b'a//b') if __name__ == '__main__': silenttestrunner.main(__name__)