Changeset View
Changeset View
Standalone View
Standalone View
tests/test-sidedata-exchange.t
=========================== | =========================== | ||||
Tests for sidedata exchange | Tests for sidedata exchange | ||||
=========================== | =========================== | ||||
Check simple exchange behavior | Check simple exchange behavior | ||||
============================== | ============================== | ||||
Pusher and pushed have sidedata enabled | Pusher and pushed have sidedata enabled | ||||
--------------------------------------- | --------------------------------------- | ||||
$ hg init sidedata-source --config format.exp-use-side-data=yes | $ hg init sidedata-source --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> sidedata-source/.hg/hgrc | $ cat << EOF >> sidedata-source/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | > testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | ||||
> EOF | > EOF | ||||
$ hg init sidedata-target --config format.exp-use-side-data=yes | $ hg init sidedata-target --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> sidedata-target/.hg/hgrc | $ cat << EOF >> sidedata-target/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | > testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | ||||
> EOF | > EOF | ||||
$ cd sidedata-source | $ cd sidedata-source | ||||
$ echo a > a | $ echo a > a | ||||
$ echo b > b | $ echo b > b | ||||
$ echo c > c | $ echo c > c | ||||
▲ Show 20 Lines • Show All 41 Lines • ▼ Show 20 Line(s) | --------------------------------------- | ||||
entry-0002 size 32 | entry-0002 size 32 | ||||
'\xd9\xcd\x81UvL5C\xf1\x0f\xad\x8aH\rt17Fo\x8dU!<\x8e\xae\xfc\xd1/\x06\xd4:\x80' | '\xd9\xcd\x81UvL5C\xf1\x0f\xad\x8aH\rt17Fo\x8dU!<\x8e\xae\xfc\xd1/\x06\xd4:\x80' | ||||
$ cd .. | $ cd .. | ||||
Puller and pulled have sidedata enabled | Puller and pulled have sidedata enabled | ||||
--------------------------------------- | --------------------------------------- | ||||
$ rm -rf sidedata-source sidedata-target | $ rm -rf sidedata-source sidedata-target | ||||
$ hg init sidedata-source --config format.exp-use-side-data=yes | $ hg init sidedata-source --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> sidedata-source/.hg/hgrc | $ cat << EOF >> sidedata-source/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | > testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | ||||
> EOF | > EOF | ||||
$ hg init sidedata-target --config format.exp-use-side-data=yes | $ hg init sidedata-target --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> sidedata-target/.hg/hgrc | $ cat << EOF >> sidedata-target/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | > testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | ||||
> EOF | > EOF | ||||
$ cd sidedata-source | $ cd sidedata-source | ||||
$ echo a > a | $ echo a > a | ||||
$ echo b > b | $ echo b > b | ||||
$ echo c > c | $ echo c > c | ||||
▲ Show 20 Lines • Show All 45 Lines • ▼ Show 20 Line(s) | --------------------------------------- | ||||
$ cd .. | $ cd .. | ||||
Now on to asymmetric configs. | Now on to asymmetric configs. | ||||
Pusher has sidedata enabled, pushed does not | Pusher has sidedata enabled, pushed does not | ||||
-------------------------------------------- | -------------------------------------------- | ||||
$ rm -rf sidedata-source sidedata-target | $ rm -rf sidedata-source sidedata-target | ||||
$ hg init sidedata-source --config format.exp-use-side-data=yes | $ hg init sidedata-source --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> sidedata-source/.hg/hgrc | $ cat << EOF >> sidedata-source/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | > testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | ||||
> EOF | > EOF | ||||
$ hg init sidedata-target --config format.exp-use-side-data=no | $ hg init sidedata-target --config experimental.revlogv2=no | ||||
$ cd sidedata-source | $ cd sidedata-source | ||||
$ echo a > a | $ echo a > a | ||||
$ echo b > b | $ echo b > b | ||||
$ echo c > c | $ echo c > c | ||||
$ hg commit -Am "initial" | $ hg commit -Am "initial" | ||||
adding a | adding a | ||||
adding b | adding b | ||||
adding c | adding c | ||||
Show All 26 Lines | -------------------------------------------- | ||||
$ hg -R ../sidedata-target debugsidedata a 0 | $ hg -R ../sidedata-target debugsidedata a 0 | ||||
$ hg -R ../sidedata-target debugsidedata a 1 -v | $ hg -R ../sidedata-target debugsidedata a 1 -v | ||||
$ cd .. | $ cd .. | ||||
Pulled has sidedata enabled, puller does not | Pulled has sidedata enabled, puller does not | ||||
-------------------------------------------- | -------------------------------------------- | ||||
$ rm -rf sidedata-source sidedata-target | $ rm -rf sidedata-source sidedata-target | ||||
$ hg init sidedata-source --config format.exp-use-side-data=yes | $ hg init sidedata-source --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> sidedata-source/.hg/hgrc | $ cat << EOF >> sidedata-source/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | > testsidedata=$TESTDIR/testlib/ext-sidedata-5.py | ||||
> EOF | > EOF | ||||
$ hg init sidedata-target --config format.exp-use-side-data=no | $ hg init sidedata-target --config experimental.revlogv2=no | ||||
$ cd sidedata-source | $ cd sidedata-source | ||||
$ echo a > a | $ echo a > a | ||||
$ echo b > b | $ echo b > b | ||||
$ echo c > c | $ echo c > c | ||||
$ hg commit -Am "initial" | $ hg commit -Am "initial" | ||||
adding a | adding a | ||||
adding b | adding b | ||||
adding c | adding c | ||||
Show All 31 Lines | |||||
Check sidedata exchange with on-the-fly generation and removal | Check sidedata exchange with on-the-fly generation and removal | ||||
============================================================== | ============================================================== | ||||
(Push) Target has strict superset of the source | (Push) Target has strict superset of the source | ||||
----------------------------------------------- | ----------------------------------------------- | ||||
$ hg init source-repo --config format.exp-use-side-data=yes | $ hg init source-repo --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ hg init target-repo --config format.exp-use-side-data=yes | $ hg init target-repo --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> target-repo/.hg/hgrc | $ cat << EOF >> target-repo/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata.py | > testsidedata=$TESTDIR/testlib/ext-sidedata.py | ||||
> EOF | > EOF | ||||
$ cd source-repo | $ cd source-repo | ||||
$ echo aaa > a | $ echo aaa > a | ||||
$ hg add a | $ hg add a | ||||
$ hg commit -m a | $ hg commit -m a | ||||
▲ Show 20 Lines • Show All 54 Lines • ▼ Show 20 Line(s) | |||||
(Push) Difference is not subset/superset | (Push) Difference is not subset/superset | ||||
---------------------------------------- | ---------------------------------------- | ||||
Source has one in common, one missing and one more sidedata category with the | Source has one in common, one missing and one more sidedata category with the | ||||
target. | target. | ||||
$ rm -rf source-repo target-repo | $ rm -rf source-repo target-repo | ||||
$ hg init source-repo --config format.exp-use-side-data=yes | $ hg init source-repo --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> source-repo/.hg/hgrc | $ cat << EOF >> source-repo/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata3=$TESTDIR/testlib/ext-sidedata-3.py | > testsidedata3=$TESTDIR/testlib/ext-sidedata-3.py | ||||
> EOF | > EOF | ||||
$ hg init target-repo --config format.exp-use-side-data=yes | $ hg init target-repo --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> target-repo/.hg/hgrc | $ cat << EOF >> target-repo/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata4=$TESTDIR/testlib/ext-sidedata-4.py | > testsidedata4=$TESTDIR/testlib/ext-sidedata-4.py | ||||
> EOF | > EOF | ||||
$ cd source-repo | $ cd source-repo | ||||
$ echo aaa > a | $ echo aaa > a | ||||
$ hg add a | $ hg add a | ||||
$ hg commit -m a | $ hg commit -m a | ||||
▲ Show 20 Lines • Show All 79 Lines • ▼ Show 20 Line(s) | but not entry-0001. | ||||
entry-0002 size 32 | entry-0002 size 32 | ||||
entry-0003 size 48 | entry-0003 size 48 | ||||
$ cd .. | $ cd .. | ||||
(Pull) Target has strict superset of the source | (Pull) Target has strict superset of the source | ||||
----------------------------------------------- | ----------------------------------------------- | ||||
$ rm -rf source-repo target-repo | $ rm -rf source-repo target-repo | ||||
$ hg init source-repo --config format.exp-use-side-data=yes | $ hg init source-repo --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ hg init target-repo --config format.exp-use-side-data=yes | $ hg init target-repo --config experimental.revlogv2=enable-unstable-format-and-corrupt-my-data | ||||
$ cat << EOF >> target-repo/.hg/hgrc | $ cat << EOF >> target-repo/.hg/hgrc | ||||
> [extensions] | > [extensions] | ||||
> testsidedata=$TESTDIR/testlib/ext-sidedata.py | > testsidedata=$TESTDIR/testlib/ext-sidedata.py | ||||
> EOF | > EOF | ||||
$ cd source-repo | $ cd source-repo | ||||
$ echo aaa > a | $ echo aaa > a | ||||
$ hg add a | $ hg add a | ||||
$ hg commit -m a | $ hg commit -m a | ||||
▲ Show 20 Lines • Show All 49 Lines • Show Last 20 Lines |