Mercurial > evolve
view tests/test-exchange-obsmarkers-case-B6.t @ 5786:c0122b98356c
divergence-resolution: [patch 1] fix a messed up test case
Because of logic change in divergence resolution which causes the order change
in picking the resolution parent this test case was messed up.
It was supposed to test that that it hits conflict while relocating the
divergent cset but because of some change in previous patches, relocation went
successful and it hits conflict while merging the two divergent csets.
This patch, by making some changes in files content make sure that we get
conflict during relocation.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 24 Jan 2021 19:47:17 +0530 |
parents | a8ff17479fb8 |
children | f3e39a354378 |
line wrap: on
line source
============================================ Testing obsolescence markers push: Cases B.6 ============================================ Mercurial pushes obsolescences markers relevant to the "pushed-set", the set of all changesets that requested to be "in sync" after the push (even if they are already on both side). This test belongs to a series of tests checking such set is properly computed and applied. This does not tests "obsmarkers" discovery capabilities. Category B: pruning case TestCase 6: Pruned changeset with precursors not in pushed set B.6 Pruned changeset with precursors not in pushed set ====================================================== .. {{{ .. B ø⇠⊗ B' .. | | .. A ○ | .. |/ .. ● O .. }}} .. .. Marker exist from: .. .. * `B ø⇠⊗ B'` .. * B' prune .. .. Command run: .. .. * hg push -r O .. .. Expected exchange: .. .. * `B ø⇠⊗ B'` .. * B' prune Setup ----- $ . $TESTDIR/testlib/exchange-obsmarker-util.sh Initial $ setuprepos B.6 creating test repo for test case B.6 - pulldest - main - pushdest cd into `main` and proceed with env setup $ cd main $ mkcommit A $ mkcommit B0 $ hg up --quiet 0 $ mkcommit B1 created new head $ hg debugobsolete `getid 'desc(B0)'` `getid 'desc(B1)'` 1 new obsolescence markers obsoleted 1 changesets $ hg prune -qd '0 0' . $ hg log -G --hidden x f6298a8ac3a4 (draft): B1 | | x 962ecf6b1afc (draft): B0 | | | o f5bc6836db60 (draft): A |/ @ a9bdc8b26820 (public): O $ inspect_obsmarkers obsstore content ================ 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'} obshashtree =========== a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04 86c0915d87bd250d041dcb32e46789b6f859686b f5bc6836db60e308a17ba08bf050154ba9c4fad7 90eb403e560458149d549c4a965c0c2b81fe0cbb 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b 6758dc37fbd86f9625196ba95b8b76ec8c72e73d f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 ce7933a7b712bc438ea1881c2b79c6581618245c obshashrange ============ rev node index size depth obshash 1 f5bc6836db60 0 2 2 000000000000 0 a9bdc8b26820 0 1 1 86c0915d87bd 1 f5bc6836db60 1 1 2 000000000000 $ cd .. $ cd .. Actual Test ------------------------------------- $ dotest B.6 O ## Running testcase B.6 # testing echange of "O" (a9bdc8b26820) ## initial state # obstore: main 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'} # obstore: pushdest # obstore: pulldest ## pushing "O" from main to pushdest pushing to pushdest searching for changes no changes found remote: 2 new obsolescence markers ## post push state # obstore: main 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'} # obstore: pushdest 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'} # obstore: pulldest ## pulling "a9bdc8b26820" from main into pulldest pulling from main no changes found 2 new obsolescence markers ## post pull state # obstore: main 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'} # obstore: pushdest 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'} # obstore: pulldest 962ecf6b1afc94e15c7e48fdfb76ef8abd11372b f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} f6298a8ac3a4b78bbeae5f1d3dc5bc3c3812f0f3 0 {a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'prune', 'user': 'test'}