Mercurial > hg
annotate tests/test-inotify-issue1542.t @ 18944:a9c443b3b240
unionrepo: read-only operations on a union of two localrepos
unionrepo is just like bundlerepo without bundles.
The implementation is very similar to bundlerepo, but I don't see any obvious
way to generalize it.
Some most obvious use cases for this would be log and diff across local repos,
as a kind of preview of pulls, for instance:
$ hg -R union:repo1+repo2 heads
$ hg -R union:repo1+repo2 log -r REPO1REV -r REPO2REV
$ hg -R union:repo1+repo2 log -r '::REPO1REV-::REPO2REV'
$ hg -R union:repo1+repo2 log -r 'ancestor(REPO1REV,REPO2REV)'
$ hg -R union:repo1+repo2 diff -r REPO1REV -r REPO2REV
This is going to be used in RhodeCode, and Bitbucket already uses something
similar. Having a core implementation would be beneficial.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Fri, 18 Jan 2013 15:54:09 +0100 |
parents | f7c4eb60b0c3 |
children |
rev | line source |
---|---|
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
1 |
12455
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
2 $ "$TESTDIR/hghave" inotify || exit 80 |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
3 $ hg init |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
4 $ touch a |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
5 $ mkdir dir |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
6 $ touch dir/b |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
7 $ touch dir/c |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
8 $ echo "[extensions]" >> $HGRCPATH |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
9 $ echo "inotify=" >> $HGRCPATH |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
10 $ hg add dir/c |
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
11 |
12455
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
12 inserve |
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
13 |
12455
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
14 $ hg inserve -d --pid-file=hg.pid 2>&1 |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
15 $ cat hg.pid >> "$DAEMON_PIDS" |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
16 $ hg st |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
17 A dir/c |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
18 ? a |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
19 ? dir/b |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
20 ? hg.pid |
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
21 |
12455
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
22 moving dir out |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
23 |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
24 $ mv dir ../tmp-test-inotify-issue1542 |
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
25 |
12455
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
26 status |
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
27 |
12455
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
28 $ hg st |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
29 ! dir/c |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
30 ? a |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
31 ? hg.pid |
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
32 $ sleep 1 |
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
33 |
12455
92b2c876a79d
tests: unify test-inotify-issue1542
Matt Mackall <mpm@selenic.com>
parents:
7892
diff
changeset
|
34 Are we able to kill the service? if not, the service died on some error |
7892
67e59a9886d5
Fixing issue1542, adding a relevant test
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
diff
changeset
|
35 |
18592
f7c4eb60b0c3
test-inotify-issue1542.t: migrate to killdaemons from kill `cat pidfile`
Augie Fackler <raf@durin42.com>
parents:
12455
diff
changeset
|
36 $ "$TESTDIR/killdaemons.py" hg.pid |