Mercurial > public > mercurial-scm > hg-stable
diff tests/test-manifest.py @ 24228:542c891274b2
lazymanifest: use a binary search to do an insertion
This makes insertions log(n) plus some memmove() overhead, rather than
doing an append followed by an n*log(n) sort. There's probably a lot
of performance to be gained by adding a batch-add method, which could
be smarter about the memmove()s performed.
Includes a couple of extra tests that should help prevent bugs.
Thanks to Martin for some significant pre-mail cleanup of this change.
author | Augie Fackler <augie@google.com> |
---|---|
date | Fri, 30 Jan 2015 21:30:40 -0800 |
parents | 3e5c4af69808 |
children | 49cd847fd69a |
line wrap: on
line diff
--- a/tests/test-manifest.py Mon Nov 17 00:00:25 2014 -0500 +++ b/tests/test-manifest.py Fri Jan 30 21:30:40 2015 -0800 @@ -133,6 +133,10 @@ self.assertRaises(KeyError, lambda : m['foo']) self.assertEqual(1, len(m)) self.assertEqual(1, len(list(m))) + # now restore and make sure everything works right + m['foo'] = 'a' * 20, '' + self.assertEqual(2, len(m)) + self.assertEqual(2, len(list(m))) def testManifestDiff(self): MISSING = (None, '')