tests/test-obsolete-divergent.t
branchstable
changeset 43306 59338f956109
parent 42893 34a46d48d24e
child 44691 48b99af7b4b3
equal deleted inserted replaced
43029:c5dc122fdc2b 43306:59338f956109
    62 
    62 
    63 A_1 have two direct and divergent successors A_1 and A_1
    63 A_1 have two direct and divergent successors A_1 and A_1
    64 
    64 
    65   $ newcase direct
    65   $ newcase direct
    66   $ hg debugobsolete `getid A_0` `getid A_1`
    66   $ hg debugobsolete `getid A_0` `getid A_1`
       
    67   1 new obsolescence markers
    67   obsoleted 1 changesets
    68   obsoleted 1 changesets
    68   $ hg debugobsolete `getid A_0` `getid A_2`
    69   $ hg debugobsolete `getid A_0` `getid A_2`
       
    70   1 new obsolescence markers
    69   2 new content-divergent changesets
    71   2 new content-divergent changesets
    70   $ hg log -G --hidden
    72   $ hg log -G --hidden
    71   *  3:392fd25390da A_2
    73   *  3:392fd25390da A_2
    72   |
    74   |
    73   | *  2:82623d38b9ba A_1
    75   | *  2:82623d38b9ba A_1
   122 indirect divergence with known changeset
   124 indirect divergence with known changeset
   123 -------------------------------------------
   125 -------------------------------------------
   124 
   126 
   125   $ newcase indirect_known
   127   $ newcase indirect_known
   126   $ hg debugobsolete `getid A_0` `getid A_1`
   128   $ hg debugobsolete `getid A_0` `getid A_1`
       
   129   1 new obsolescence markers
   127   obsoleted 1 changesets
   130   obsoleted 1 changesets
   128   $ hg debugobsolete `getid A_0` `getid A_2`
   131   $ hg debugobsolete `getid A_0` `getid A_2`
       
   132   1 new obsolescence markers
   129   2 new content-divergent changesets
   133   2 new content-divergent changesets
   130   $ mkcommit A_3
   134   $ mkcommit A_3
   131   created new head
   135   created new head
   132   $ hg debugobsolete `getid A_2` `getid A_3`
   136   $ hg debugobsolete `getid A_2` `getid A_3`
       
   137   1 new obsolescence markers
   133   obsoleted 1 changesets
   138   obsoleted 1 changesets
   134   $ hg log -G --hidden
   139   $ hg log -G --hidden
   135   @  4:01f36c5a8fda A_3
   140   @  4:01f36c5a8fda A_3
   136   |
   141   |
   137   | x  3:392fd25390da A_2 [rewritten as 4:01f36c5a8fda]
   142   | x  3:392fd25390da A_2 [rewritten as 4:01f36c5a8fda]
   182 indirect divergence with known changeset
   187 indirect divergence with known changeset
   183 -------------------------------------------
   188 -------------------------------------------
   184 
   189 
   185   $ newcase indirect_unknown
   190   $ newcase indirect_unknown
   186   $ hg debugobsolete `getid A_0` aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
   191   $ hg debugobsolete `getid A_0` aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
       
   192   1 new obsolescence markers
   187   obsoleted 1 changesets
   193   obsoleted 1 changesets
   188   $ hg debugobsolete aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid A_1`
   194   $ hg debugobsolete aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid A_1`
       
   195   1 new obsolescence markers
   189   $ hg debugobsolete `getid A_0` `getid A_2`
   196   $ hg debugobsolete `getid A_0` `getid A_2`
       
   197   1 new obsolescence markers
   190   2 new content-divergent changesets
   198   2 new content-divergent changesets
   191   $ hg log -G --hidden
   199   $ hg log -G --hidden
   192   *  3:392fd25390da A_2
   200   *  3:392fd25390da A_2
   193   |
   201   |
   194   | *  2:82623d38b9ba A_1
   202   | *  2:82623d38b9ba A_1
   232 do not take unknown node in account if they are final
   240 do not take unknown node in account if they are final
   233 -----------------------------------------------------
   241 -----------------------------------------------------
   234 
   242 
   235   $ newcase final-unknown
   243   $ newcase final-unknown
   236   $ hg debugobsolete `getid A_0` `getid A_1`
   244   $ hg debugobsolete `getid A_0` `getid A_1`
       
   245   1 new obsolescence markers
   237   obsoleted 1 changesets
   246   obsoleted 1 changesets
   238   $ hg debugobsolete `getid A_1` `getid A_2`
   247   $ hg debugobsolete `getid A_1` `getid A_2`
       
   248   1 new obsolescence markers
   239   obsoleted 1 changesets
   249   obsoleted 1 changesets
   240   $ hg debugobsolete `getid A_0` bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
   250   $ hg debugobsolete `getid A_0` bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
       
   251   1 new obsolescence markers
   241   $ hg debugobsolete bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc
   252   $ hg debugobsolete bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc
       
   253   1 new obsolescence markers
   242   $ hg debugobsolete `getid A_1` dddddddddddddddddddddddddddddddddddddddd
   254   $ hg debugobsolete `getid A_1` dddddddddddddddddddddddddddddddddddddddd
       
   255   1 new obsolescence markers
   243 
   256 
   244   $ hg debugsuccessorssets --hidden 'desc('A_0')'
   257   $ hg debugsuccessorssets --hidden 'desc('A_0')'
   245   007dc284c1f8
   258   007dc284c1f8
   246       392fd25390da
   259       392fd25390da
   247   $ hg debugsuccessorssets 'desc('A_0')' --closest
   260   $ hg debugsuccessorssets 'desc('A_0')' --closest
   254 divergence that converge again is not divergence anymore
   267 divergence that converge again is not divergence anymore
   255 -----------------------------------------------------
   268 -----------------------------------------------------
   256 
   269 
   257   $ newcase converged_divergence
   270   $ newcase converged_divergence
   258   $ hg debugobsolete `getid A_0` `getid A_1`
   271   $ hg debugobsolete `getid A_0` `getid A_1`
       
   272   1 new obsolescence markers
   259   obsoleted 1 changesets
   273   obsoleted 1 changesets
   260   $ hg debugobsolete `getid A_0` `getid A_2`
   274   $ hg debugobsolete `getid A_0` `getid A_2`
       
   275   1 new obsolescence markers
   261   2 new content-divergent changesets
   276   2 new content-divergent changesets
   262   $ mkcommit A_3
   277   $ mkcommit A_3
   263   created new head
   278   created new head
   264   $ hg debugobsolete `getid A_1` `getid A_3`
   279   $ hg debugobsolete `getid A_1` `getid A_3`
       
   280   1 new obsolescence markers
   265   obsoleted 1 changesets
   281   obsoleted 1 changesets
   266   $ hg debugobsolete `getid A_2` `getid A_3`
   282   $ hg debugobsolete `getid A_2` `getid A_3`
       
   283   1 new obsolescence markers
   267   obsoleted 1 changesets
   284   obsoleted 1 changesets
   268   $ hg log -G --hidden
   285   $ hg log -G --hidden
   269   @  4:01f36c5a8fda A_3
   286   @  4:01f36c5a8fda A_3
   270   |
   287   |
   271   | x  3:392fd25390da A_2 [rewritten as 4:01f36c5a8fda]
   288   | x  3:392fd25390da A_2 [rewritten as 4:01f36c5a8fda]
   310 split is not divergences
   327 split is not divergences
   311 -----------------------------
   328 -----------------------------
   312 
   329 
   313   $ newcase split
   330   $ newcase split
   314   $ hg debugobsolete `getid A_0` `getid A_1` `getid A_2`
   331   $ hg debugobsolete `getid A_0` `getid A_1` `getid A_2`
       
   332   1 new obsolescence markers
   315   obsoleted 1 changesets
   333   obsoleted 1 changesets
   316   $ hg log -G --hidden
   334   $ hg log -G --hidden
   317   o  3:392fd25390da A_2
   335   o  3:392fd25390da A_2
   318   |
   336   |
   319   | o  2:82623d38b9ba A_1
   337   | o  2:82623d38b9ba A_1
   352 Even when subsequent rewriting happen
   370 Even when subsequent rewriting happen
   353 
   371 
   354   $ mkcommit A_3
   372   $ mkcommit A_3
   355   created new head
   373   created new head
   356   $ hg debugobsolete `getid A_1` `getid A_3`
   374   $ hg debugobsolete `getid A_1` `getid A_3`
       
   375   1 new obsolescence markers
   357   obsoleted 1 changesets
   376   obsoleted 1 changesets
   358   $ hg up 0
   377   $ hg up 0
   359   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   378   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   360   $ mkcommit A_4
   379   $ mkcommit A_4
   361   created new head
   380   created new head
   362   $ hg debugobsolete `getid A_2` `getid A_4`
   381   $ hg debugobsolete `getid A_2` `getid A_4`
       
   382   1 new obsolescence markers
   363   obsoleted 1 changesets
   383   obsoleted 1 changesets
   364   $ hg up 0
   384   $ hg up 0
   365   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   385   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   366   $ mkcommit A_5
   386   $ mkcommit A_5
   367   created new head
   387   created new head
   368   $ hg debugobsolete `getid A_4` `getid A_5`
   388   $ hg debugobsolete `getid A_4` `getid A_5`
       
   389   1 new obsolescence markers
   369   obsoleted 1 changesets
   390   obsoleted 1 changesets
   370   $ hg log -G --hidden
   391   $ hg log -G --hidden
   371   @  6:e442cfc57690 A_5
   392   @  6:e442cfc57690 A_5
   372   |
   393   |
   373   | x  5:6a411f0d7a0a A_4 [rewritten as 6:e442cfc57690]
   394   | x  5:6a411f0d7a0a A_4 [rewritten as 6:e442cfc57690]
   424 Check more complex obsolescence graft (with divergence)
   445 Check more complex obsolescence graft (with divergence)
   425 
   446 
   426   $ mkcommit B_0; hg up 0
   447   $ mkcommit B_0; hg up 0
   427   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   448   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   428   $ hg debugobsolete `getid B_0` `getid A_2`
   449   $ hg debugobsolete `getid B_0` `getid A_2`
       
   450   1 new obsolescence markers
   429   obsoleted 1 changesets
   451   obsoleted 1 changesets
   430   $ mkcommit A_7; hg up 0
   452   $ mkcommit A_7; hg up 0
   431   created new head
   453   created new head
   432   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   454   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   433   $ mkcommit A_8; hg up 0
   455   $ mkcommit A_8; hg up 0
   434   created new head
   456   created new head
   435   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   457   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   436   $ hg debugobsolete `getid A_5` `getid A_7` `getid A_8`
   458   $ hg debugobsolete `getid A_5` `getid A_7` `getid A_8`
       
   459   1 new obsolescence markers
   437   obsoleted 1 changesets
   460   obsoleted 1 changesets
   438   $ mkcommit A_9; hg up 0
   461   $ mkcommit A_9; hg up 0
   439   created new head
   462   created new head
   440   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   463   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   441   $ hg debugobsolete `getid A_5` `getid A_9`
   464   $ hg debugobsolete `getid A_5` `getid A_9`
       
   465   1 new obsolescence markers
   442   4 new content-divergent changesets
   466   4 new content-divergent changesets
   443   $ hg log -G --hidden
   467   $ hg log -G --hidden
   444   *  10:bed64f5d2f5a A_9
   468   *  10:bed64f5d2f5a A_9
   445   |
   469   |
   446   | *  9:14608b260df8 A_8
   470   | *  9:14608b260df8 A_8
   545 
   569 
   546   $ mkcommit A_A; hg up 0
   570   $ mkcommit A_A; hg up 0
   547   created new head
   571   created new head
   548   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   572   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   549   $ hg debugobsolete `getid A_9` `getid A_A`
   573   $ hg debugobsolete `getid A_9` `getid A_A`
       
   574   1 new obsolescence markers
   550   obsoleted 1 changesets
   575   obsoleted 1 changesets
   551   $ hg debugobsolete `getid A_7` `getid A_A`
   576   $ hg debugobsolete `getid A_7` `getid A_A`
       
   577   1 new obsolescence markers
   552   obsoleted 1 changesets
   578   obsoleted 1 changesets
   553   $ hg debugobsolete `getid A_8` `getid A_A`
   579   $ hg debugobsolete `getid A_8` `getid A_A`
       
   580   1 new obsolescence markers
   554   obsoleted 1 changesets
   581   obsoleted 1 changesets
   555   $ hg log -G --hidden
   582   $ hg log -G --hidden
   556   o  11:a139f71be9da A_A
   583   o  11:a139f71be9da A_A
   557   |
   584   |
   558   | x  10:bed64f5d2f5a A_9 [rewritten as 11:a139f71be9da]
   585   | x  10:bed64f5d2f5a A_9 [rewritten as 11:a139f71be9da]
   673 Do not report divergent successors-set if it is a subset of another
   700 Do not report divergent successors-set if it is a subset of another
   674 successors-set. (report [A,B] not [A] + [A,B])
   701 successors-set. (report [A,B] not [A] + [A,B])
   675 
   702 
   676   $ newcase subset
   703   $ newcase subset
   677   $ hg debugobsolete `getid A_0` `getid A_2`
   704   $ hg debugobsolete `getid A_0` `getid A_2`
       
   705   1 new obsolescence markers
   678   obsoleted 1 changesets
   706   obsoleted 1 changesets
   679   $ hg debugobsolete `getid A_0` `getid A_1` `getid A_2`
   707   $ hg debugobsolete `getid A_0` `getid A_1` `getid A_2`
       
   708   1 new obsolescence markers
   680   $ hg debugsuccessorssets --hidden 'desc('A_0')'
   709   $ hg debugsuccessorssets --hidden 'desc('A_0')'
   681   007dc284c1f8
   710   007dc284c1f8
   682       82623d38b9ba 392fd25390da
   711       82623d38b9ba 392fd25390da
   683   $ hg debugsuccessorssets 'desc('A_0')' --closest
   712   $ hg debugsuccessorssets 'desc('A_0')' --closest
   684   $ hg debugsuccessorssets 'desc('A_0')' --closest --hidden
   713   $ hg debugsuccessorssets 'desc('A_0')' --closest --hidden