Mercurial > hg
view tests/test-debugindexdot.t @ 31763:8a0c47982ade
test-revlog-raw: fix "genbits" implementation
The "genbits" implementation is actually incorrect. This patch fixes it. A
good "genbits" implementation should pass the below assertion:
n = 3 # or other number
l = list(genbits(n))
assert 2**(n*2) == len(set((l[i]<<n)+l[i+1] for i in range(len(l)-1)))
An assertion is added to make sure "genbits" won't work unexpectedly.
author | Jun Wu <quark@fb.com> |
---|---|
date | Sun, 02 Apr 2017 18:12:47 -0700 |
parents | a03c3ba3e4b5 |
children | 435481393198 |
line wrap: on
line source
Just exercise debugindexdot Create a short file history including a merge. $ hg init t $ cd t $ echo a > a $ hg ci -qAm t1 -d '0 0' $ echo a >> a $ hg ci -m t2 -d '1 0' $ hg up -qC 0 $ echo b >> a $ hg ci -m t3 -d '2 0' created new head $ HGMERGE=true hg merge -q $ hg ci -m merge -d '3 0' $ hg debugindexdot .hg/store/data/a.i digraph G { -1 -> 0 0 -> 1 0 -> 2 2 -> 3 1 -> 3 } $ cd ..