diff options
Diffstat (limited to 'tests/test-share.t')
-rw-r--r-- | tests/test-share.t | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/tests/test-share.t b/tests/test-share.t new file mode 100644 index 0000000..0eb755f --- /dev/null +++ b/tests/test-share.t @@ -0,0 +1,129 @@ + $ "$TESTDIR/hghave" serve || exit 80 + + $ echo "[extensions]" >> $HGRCPATH + $ echo "share = " >> $HGRCPATH + +prepare repo1 + + $ hg init repo1 + $ cd repo1 + $ echo a > a + $ hg commit -A -m'init' + adding a + +share it + + $ cd .. + $ hg share repo1 repo2 + updating working directory + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + +share shouldn't have a store dir + + $ cd repo2 + $ test -d .hg/store + [1] + +Some sed versions appends newline, some don't, and some just fails + + $ cat .hg/sharedpath; echo + $TESTTMP/repo1/.hg (glob) + +trailing newline on .hg/sharedpath is ok + $ hg tip -q + 0:d3873e73d99e + $ echo '' >> .hg/sharedpath + $ cat .hg/sharedpath + $TESTTMP/repo1/.hg (glob) + $ hg tip -q + 0:d3873e73d99e + +commit in shared clone + + $ echo a >> a + $ hg commit -m'change in shared clone' + +check original + + $ cd ../repo1 + $ hg log + changeset: 1:8af4dc49db9e + tag: tip + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: change in shared clone + + changeset: 0:d3873e73d99e + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: init + + $ hg update + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cat a # should be two lines of "a" + a + a + +commit in original + + $ echo b > b + $ hg commit -A -m'another file' + adding b + +check in shared clone + + $ cd ../repo2 + $ hg log + changeset: 2:c2e0ac586386 + tag: tip + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: another file + + changeset: 1:8af4dc49db9e + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: change in shared clone + + changeset: 0:d3873e73d99e + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: init + + $ hg update + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cat b # should exist with one "b" + b + +hg serve shared clone + + $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid + $ cat hg.pid >> $DAEMON_PIDS + $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'raw-file/' + 200 Script output follows + + + -rw-r--r-- 4 a + -rw-r--r-- 2 b + + + +test unshare command + + $ hg unshare + $ test -d .hg/store + $ test -f .hg/sharedpath + [1] + $ hg unshare + abort: this is not a shared repo + [255] + +check that a change does not propagate + + $ echo b >> b + $ hg commit -m'change in unshared' + $ cd ../repo1 + $ hg id -r tip + c2e0ac586386 tip + + $ cd .. |