sapling/eden/scm/tests/test-commitcloud-lazypull-phab.t

191 lines
5.6 KiB
Perl
Raw Normal View History

#chg-compatible
$ configure dummyssh mutation-norecord
$ disable treemanifest
$ enable amend arcdiff commitcloud infinitepush rebase remotenames share
$ setconfig extensions.arcconfig="$TESTDIR/../edenscm/hgext/extlib/phabricator/arcconfig.py"
$ setconfig infinitepush.branchpattern="re:scratch/.*" commitcloud.hostname=testhost
$ readconfig <<EOF
> [alias]
> trglog = log -G --template "{node|short} '{desc}' {bookmarks} {remotenames}\n"
> descr = log -r '.' --template "{desc}"
> EOF
$ setconfig remotefilelog.reponame=server
$ mkcommit() {
> echo "$1" > "$1"
> hg commit -Aqm "$1"
> }
$ hg init server
$ cd server
$ cat >> .hg/hgrc << EOF
> [infinitepush]
> server = yes
> indextype = disk
> storetype = disk
> reponame = testrepo
> EOF
$ mkcommit "base"
$ hg bookmark master
$ cd ..
Make shared part of config
$ cat >> shared.rc << EOF
> [commitcloud]
> servicetype = local
> servicelocation = $TESTTMP
> token_enforced = False
> EOF
Make the first clone of the server
$ hg clone ssh://user@dummy/server client1 -q
$ cd client1
$ cat ../shared.rc >> .hg/hgrc
$ hg cloud join -q
$ cd ..
Make the second clone of the server
$ hg clone ssh://user@dummy/server client2 -q
$ cd client2
$ cat ../shared.rc >> .hg/hgrc
$ hg cloud join -q
$ cd ..
Make the third clone of the server
$ hg clone ssh://user@dummy/server client3 -q
$ cd client3
$ cat ../shared.rc >> .hg/hgrc
$ hg cloud join -q
$ cd ..
Test for `hg diff --since-last-submit`
$ cd client1
$ echo '{}' > .arcrc
$ echo '{"config" : {"default" : "https://a.com/api"}, "hosts" : {"https://a.com/api/" : { "user" : "testuser", "oauth" : "garbage_cert"}}}' > .arcconfig
$ cd ..
$ cd client2
$ echo '{}' > .arcrc
$ echo '{"config" : {"default" : "https://a.com/api"}, "hosts" : {"https://a.com/api/" : { "user" : "testuser", "oauth" : "garbage_cert"}}}' > .arcconfig
$ cd ..
$ cd client3
$ echo '{}' > .arcrc
$ echo '{"config" : {"default" : "https://a.com/api"}, "hosts" : {"https://a.com/api/" : { "user" : "testuser", "oauth" : "garbage_cert"}}}' > .arcconfig
$ cd ..
$ cd client1
$ echo "Hello feature2" > feature2.body.txt
$ hg add feature2.body.txt
$ hg ci -Aqm 'Differential Revision: https://phabricator.fb.com/D1'
$ hg log -r '.' -T '{node}'
162e0a8b5732f1fa168b0a6d8cf9809053ae272a (no-eol)
$ hg cloud sync
commitcloud: synchronizing 'server' with 'user/test/default'
backing up stack rooted at 162e0a8b5732
commitcloud: commits synchronized
finished in * (glob)
remote: pushing 1 commit:
remote: 162e0a8b5732 Differential Revision: https://phabricator.fb.com/
$ cat > $TESTTMP/mockduit << EOF
> [{"data": {"query": [{"results": {"nodes": [{
> "number": 1,
> "diff_status_name": "Needs Review",
> "latest_active_diff": {
> "local_commit_info": {
> "nodes": [
> {"property_value": "{\"lolwut\": {\"time\": 0, \"commit\": \"162e0a8b5732f1fa168b0a6d8cf9809053ae272a\"}}"}
> ]
> }
> },
> "differential_diffs": {"count": 1},
> "is_landing": false,
> "created_time": 123,
> "updated_time": 222
> }]}}]}}]
> EOF
$ echo "Hello feature2 update" > feature2.body.txt
$ hg amend
$ hg cloud sync
commitcloud: synchronizing 'server' with 'user/test/default'
backing up stack rooted at 1166f984c176
commitcloud: commits synchronized
finished in * (glob)
remote: pushing 1 commit:
remote: 1166f984c176 Differential Revision: https://phabricator.fb.com/
$ cd ..
$ cd client2
$ hg cloud sync
commitcloud: synchronizing 'server' with 'user/test/default'
pulling 1166f984c176 from ssh://user@dummy/server
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 3 changes to 3 files
commitcloud: commits synchronized
finished in * (glob)
$ hg up 1166f984c176
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ HG_ARC_CONDUIT_MOCK=$TESTTMP/mockduit hg diff --since-last-submit --config extensions.commitcloud=!
pulling '162e0a8b5732f1fa168b0a6d8cf9809053ae272a' from 'ssh://user@dummy/server'
diff -r 162e0a8b5732 -r 1166f984c176 feature2.body.txt
--- a/feature2.body.txt Thu Jan 01 00:00:00 1970 +0000
+++ b/feature2.body.txt Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +1,1 @@
-Hello feature2
+Hello feature2 update
$ HG_ARC_CONDUIT_MOCK=$TESTTMP/mockduit hg diff --since-last-submit
diff -r 162e0a8b5732 -r 1166f984c176 feature2.body.txt
--- a/feature2.body.txt Thu Jan 01 00:00:00 1970 +0000
+++ b/feature2.body.txt Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +1,1 @@
-Hello feature2
+Hello feature2 update
$ cd ..
$ cd client3
$ hg cloud sync
commitcloud: synchronizing 'server' with 'user/test/default'
pulling 1166f984c176 from ssh://user@dummy/server
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 3 changes to 3 files
commitcloud: commits synchronized
finished in * (glob)
$ hg up 1166f984c176
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ HG_ARC_CONDUIT_MOCK=$TESTTMP/mockduit hg log -r 'lastsubmitted(.)' -T '{node} {desc}' --config extensions.commitcloud=!
pulling '162e0a8b5732f1fa168b0a6d8cf9809053ae272a' from 'ssh://user@dummy/server'
162e0a8b5732f1fa168b0a6d8cf9809053ae272a Differential Revision: https://phabricator.fb.com/D1 (no-eol)
$ HG_ARC_CONDUIT_MOCK=$TESTTMP/mockduit hg log --hidden -r 'lastsubmitted(.)' -T '{node} {desc}'
162e0a8b5732f1fa168b0a6d8cf9809053ae272a Differential Revision: https://phabricator.fb.com/D1 (no-eol)