##// END OF EJS Templates
doc: fix mistake about matching against directories in "pattern.txt"...
doc: fix mistake about matching against directories in "pattern.txt" This fixes mistake of documentation about matching against directories in "pattern.txt" introduced by 50db996bccaf. ".hgignore" treats specified "glob:" pattern as same as one specified for "-X" option: it can match against directories, too. For reference, extra regexp string appended to specified pattern for each types are listed below: see also "match.match()" and "match._regex()" for detail. ============= ========== =============== type cmdline -I/-X ============= ========== =============== glob/relglob '$' '(?:/|$)' path/relpath '(?:/|$)' '(?:/|$)' re/relre (none) (none) ============= ========== =============== Appending '$' means that the specified pattern should match against only files.

File last commit:

r18894:ed46c2b9 default
r20329:45f23b1f stable
Show More
test-dicthelpers.py
59 lines | 2.3 KiB | text/x-python | PythonLexer
from mercurial.dicthelpers import diff, join
import unittest
import silenttestrunner
class testdicthelpers(unittest.TestCase):
def test_dicthelpers(self):
# empty dicts
self.assertEqual(diff({}, {}), {})
self.assertEqual(join({}, {}), {})
d1 = {}
d1['a'] = 'foo'
d1['b'] = 'bar'
d1['c'] = 'baz'
# same identity
self.assertEqual(diff(d1, d1), {})
self.assertEqual(join(d1, d1), {'a': ('foo', 'foo'),
'b': ('bar', 'bar'),
'c': ('baz', 'baz')})
# vs empty
self.assertEqual(diff(d1, {}), {'a': ('foo', None),
'b': ('bar', None),
'c': ('baz', None)})
self.assertEqual(diff(d1, {}), {'a': ('foo', None),
'b': ('bar', None),
'c': ('baz', None)})
d2 = {}
d2['a'] = 'foo2'
d2['b'] = 'bar'
d2['d'] = 'quux'
self.assertEqual(diff(d1, d2), {'a': ('foo', 'foo2'),
'c': ('baz', None),
'd': (None, 'quux')})
self.assertEqual(join(d1, d2), {'a': ('foo', 'foo2'),
'b': ('bar', 'bar'),
'c': ('baz', None),
'd': (None, 'quux')})
# with default argument
self.assertEqual(diff(d1, d2, 123), {'a': ('foo', 'foo2'),
'c': ('baz', 123),
'd': (123, 'quux')})
self.assertEqual(join(d1, d2, 456), {'a': ('foo', 'foo2'),
'b': ('bar', 'bar'),
'c': ('baz', 456),
'd': (456, 'quux')})
# check that we compare against default
self.assertEqual(diff(d1, d2, 'baz'), {'a': ('foo', 'foo2'),
'd': ('baz', 'quux')})
self.assertEqual(diff(d1, d2, 'quux'), {'a': ('foo', 'foo2'),
'c': ('baz', 'quux')})
if __name__ == '__main__':
silenttestrunner.main(__name__)