rank: add test with golden values
authorPierre-Yves David <pierre-yves.david@octobus.net>
Fri, 28 Jan 2022 11:45:33 +0100
changeset 48764 f7d7facd7b9f
parent 48763 3984e7d4b9fd
child 48765 580660518459
rank: add test with golden values This adds a regression test for the computation of the rank, using the current values computed with the naive algorithm as the "golden" reference. Differential Revision: https://phab.mercurial-scm.org/D12142
tests/test-rank.t
--- a/tests/test-rank.t	Fri Jan 28 11:45:18 2022 +0100
+++ b/tests/test-rank.t	Fri Jan 28 11:45:33 2022 +0100
@@ -36,3 +36,188 @@
   
   $ cd ..
 
+
+Build a bigger example repo
+
+  $ hg init rank-repo-generated
+  $ cd rank-repo-generated
+  $ hg debugbuilddag '.:root1+5:mp1<root1+10:mp2/mp1+3<mp1+2:mp3/mp2$+15/mp1+4'
+  $ hg log -G -T '{desc}'
+  o  r42
+  |
+  o  r41
+  |
+  o  r40
+  |
+  o  r39
+  |
+  o    r38
+  |\
+  | o  r37
+  | |
+  | o  r36
+  | |
+  | o  r35
+  | |
+  | o  r34
+  | |
+  | o  r33
+  | |
+  | o  r32
+  | |
+  | o  r31
+  | |
+  | o  r30
+  | |
+  | o  r29
+  | |
+  | o  r28
+  | |
+  | o  r27
+  | |
+  | o  r26
+  | |
+  | o  r25
+  | |
+  | o  r24
+  | |
+  | o  r23
+  |
+  | o    r22
+  | |\
+  | | o  r21
+  | | |
+  +---o  r20
+  | |
+  | | o  r19
+  | | |
+  | | o  r18
+  | | |
+  | | o  r17
+  | | |
+  +---o  r16
+  | |/
+  | o  r15
+  | |
+  | o  r14
+  | |
+  | o  r13
+  | |
+  | o  r12
+  | |
+  | o  r11
+  | |
+  | o  r10
+  | |
+  | o  r9
+  | |
+  | o  r8
+  | |
+  | o  r7
+  | |
+  | o  r6
+  | |
+  o |  r5
+  | |
+  o |  r4
+  | |
+  o |  r3
+  | |
+  o |  r2
+  | |
+  o |  r1
+  |/
+  o  r0
+  
+
+
+Check the rank
+--------------
+
+  $ hg log -G -T '{_fast_rank}'
+  o  26
+  |
+  o  25
+  |
+  o  24
+  |
+  o  23
+  |
+  o    22
+  |\
+  | o  15
+  | |
+  | o  14
+  | |
+  | o  13
+  | |
+  | o  12
+  | |
+  | o  11
+  | |
+  | o  10
+  | |
+  | o  9
+  | |
+  | o  8
+  | |
+  | o  7
+  | |
+  | o  6
+  | |
+  | o  5
+  | |
+  | o  4
+  | |
+  | o  3
+  | |
+  | o  2
+  | |
+  | o  1
+  |
+  | o    19
+  | |\
+  | | o  8
+  | | |
+  +---o  7
+  | |
+  | | o  20
+  | | |
+  | | o  19
+  | | |
+  | | o  18
+  | | |
+  +---o  17
+  | |/
+  | o  11
+  | |
+  | o  10
+  | |
+  | o  9
+  | |
+  | o  8
+  | |
+  | o  7
+  | |
+  | o  6
+  | |
+  | o  5
+  | |
+  | o  4
+  | |
+  | o  3
+  | |
+  | o  2
+  | |
+  o |  6
+  | |
+  o |  5
+  | |
+  o |  4
+  | |
+  o |  3
+  | |
+  o |  2
+  |/
+  o  1
+