tests/test-hook.t
changeset 24740 d283517b260b
parent 24739 ea0d5c8e047f
child 24792 7d0421de8de3
equal deleted inserted replaced
24739:ea0d5c8e047f 24740:d283517b260b
    21   $ hg commit -m a
    21   $ hg commit -m a
    22   precommit hook: HG_PARENT1=0000000000000000000000000000000000000000
    22   precommit hook: HG_PARENT1=0000000000000000000000000000000000000000
    23   pretxnopen hook: HG_TXNNAME=commit
    23   pretxnopen hook: HG_TXNNAME=commit
    24   pretxncommit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 HG_PENDING=$TESTTMP/a
    24   pretxncommit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 HG_PENDING=$TESTTMP/a
    25   0:cb9a9f314b8b
    25   0:cb9a9f314b8b
    26   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_PHASES_MOVED=1 HG_XNNAME=commit
    26   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_PHASES_MOVED=1 HG_TXNID=TXN:* HG_XNNAME=commit (glob)
    27   txnclose hook: HG_PHASES_MOVED=1 HG_TXNNAME=commit
    27   txnclose hook: HG_PHASES_MOVED=1 HG_TXNID=TXN:* HG_TXNNAME=commit (glob)
    28   commit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000
    28   commit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000
    29   commit.b hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000
    29   commit.b hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000
    30 
    30 
    31   $ hg clone . ../b
    31   $ hg clone . ../b
    32   updating to branch default
    32   updating to branch default
    49   $ hg commit -m a1 -d "1 0"
    49   $ hg commit -m a1 -d "1 0"
    50   precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    50   precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    51   pretxnopen hook: HG_TXNNAME=commit
    51   pretxnopen hook: HG_TXNNAME=commit
    52   pretxncommit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a
    52   pretxncommit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a
    53   1:ab228980c14d
    53   1:ab228980c14d
    54   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_XNNAME=commit
    54   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_TXNID=TXN:* HG_XNNAME=commit (glob)
    55   txnclose hook: HG_TXNNAME=commit
    55   txnclose hook: HG_TXNID=TXN:* HG_TXNNAME=commit (glob)
    56   commit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    56   commit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    57   commit.b hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    57   commit.b hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    58   $ hg update -C 0
    58   $ hg update -C 0
    59   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
    59   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
    60   $ echo b > b
    60   $ echo b > b
    62   $ hg commit -m b -d '1 0'
    62   $ hg commit -m b -d '1 0'
    63   precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    63   precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    64   pretxnopen hook: HG_TXNNAME=commit
    64   pretxnopen hook: HG_TXNNAME=commit
    65   pretxncommit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a
    65   pretxncommit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a
    66   2:ee9deb46ab31
    66   2:ee9deb46ab31
    67   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_XNNAME=commit
    67   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_TXNID=TXN:* HG_XNNAME=commit (glob)
    68   txnclose hook: HG_TXNNAME=commit
    68   txnclose hook: HG_TXNID=TXN:* HG_TXNNAME=commit (glob)
    69   commit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    69   commit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    70   commit.b hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    70   commit.b hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b
    71   created new head
    71   created new head
    72   $ hg merge 1
    72   $ hg merge 1
    73   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
    73   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
    75   $ hg commit -m merge -d '2 0'
    75   $ hg commit -m merge -d '2 0'
    76   precommit hook: HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd
    76   precommit hook: HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd
    77   pretxnopen hook: HG_TXNNAME=commit
    77   pretxnopen hook: HG_TXNNAME=commit
    78   pretxncommit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd HG_PENDING=$TESTTMP/a
    78   pretxncommit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd HG_PENDING=$TESTTMP/a
    79   3:07f3376c1e65
    79   3:07f3376c1e65
    80   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_XNNAME=commit
    80   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_TXNID=TXN:* HG_XNNAME=commit (glob)
    81   txnclose hook: HG_TXNNAME=commit
    81   txnclose hook: HG_TXNID=TXN:* HG_TXNNAME=commit (glob)
    82   commit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd
    82   commit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd
    83   commit.b hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd
    83   commit.b hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd
    84 
    84 
    85 test generic hooks
    85 test generic hooks
    86 
    86 
    95 
    95 
    96   $ cd ../b
    96   $ cd ../b
    97   $ hg pull ../a
    97   $ hg pull ../a
    98   pulling from ../a
    98   pulling from ../a
    99   searching for changes
    99   searching for changes
   100   prechangegroup hook: HG_SOURCE=pull HG_URL=file:$TESTTMP/a
   100   prechangegroup hook: HG_SOURCE=pull HG_TXNID=TXN:* HG_URL=file:$TESTTMP/a (glob)
   101   adding changesets
   101   adding changesets
   102   adding manifests
   102   adding manifests
   103   adding file changes
   103   adding file changes
   104   added 3 changesets with 2 changes to 2 files
   104   added 3 changesets with 2 changes to 2 files
   105   changegroup hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_URL=file:$TESTTMP/a
   105   changegroup hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_TXNID=TXN:* HG_URL=file:$TESTTMP/a (glob)
   106   incoming hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_URL=file:$TESTTMP/a
   106   incoming hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_TXNID=TXN:* HG_URL=file:$TESTTMP/a (glob)
   107   incoming hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_SOURCE=pull HG_URL=file:$TESTTMP/a
   107   incoming hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_SOURCE=pull HG_TXNID=TXN:* HG_URL=file:$TESTTMP/a (glob)
   108   incoming hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_SOURCE=pull HG_URL=file:$TESTTMP/a
   108   incoming hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_SOURCE=pull HG_TXNID=TXN:* HG_URL=file:$TESTTMP/a (glob)
   109   (run 'hg update' to get a working copy)
   109   (run 'hg update' to get a working copy)
   110 
   110 
   111 tag hooks can see env vars
   111 tag hooks can see env vars
   112 
   112 
   113   $ cd ../a
   113   $ cd ../a
   119   pretag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a
   119   pretag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a
   120   precommit hook: HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2
   120   precommit hook: HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2
   121   pretxnopen hook: HG_TXNNAME=commit
   121   pretxnopen hook: HG_TXNNAME=commit
   122   pretxncommit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PENDING=$TESTTMP/a
   122   pretxncommit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PENDING=$TESTTMP/a
   123   4:539e4b31b6dc
   123   4:539e4b31b6dc
   124   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_XNNAME=commit
   124   pretxnclose hook: HG_PENDING=$TESTTMP/a HG_TXNID=TXN:* HG_XNNAME=commit (glob)
   125   tag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a
   125   tag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a
   126   txnclose hook: HG_TXNNAME=commit
   126   txnclose hook: HG_TXNID=TXN:* HG_TXNNAME=commit (glob)
   127   commit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2
   127   commit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2
   128   commit.b hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2
   128   commit.b hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2
   129   $ hg tag -l la
   129   $ hg tag -l la
   130   pretag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la
   130   pretag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la
   131   tag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la
   131   tag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la
   216   $ hg push -B foo ../a
   216   $ hg push -B foo ../a
   217   pushing to ../a
   217   pushing to ../a
   218   searching for changes
   218   searching for changes
   219   no changes found
   219   no changes found
   220   pretxnopen hook: HG_TXNNAME=bookmarks
   220   pretxnopen hook: HG_TXNNAME=bookmarks
   221   pretxnclose hook: HG_BOOKMARK_MOVED=1 HG_PENDING=$TESTTMP/a HG_XNNAME=bookmarks
   221   pretxnclose hook: HG_BOOKMARK_MOVED=1 HG_PENDING=$TESTTMP/a HG_TXNID=TXN:* HG_XNNAME=bookmarks (glob)
   222   txnclose hook: HG_BOOKMARK_MOVED=1 HG_TXNNAME=bookmarks
   222   txnclose hook: HG_BOOKMARK_MOVED=1 HG_TXNID=TXN:* HG_TXNNAME=bookmarks (glob)
   223   pushkey hook: HG_KEY=foo HG_NAMESPACE=bookmarks HG_NEW=0000000000000000000000000000000000000000 HG_RET=1
   223   pushkey hook: HG_KEY=foo HG_NAMESPACE=bookmarks HG_NEW=0000000000000000000000000000000000000000 HG_RET=1
   224   exporting bookmark foo
   224   exporting bookmark foo
   225   [1]
   225   [1]
   226   $ cd ../a
   226   $ cd ../a
   227 
   227 
   280   > prechangegroup.forbid = python "$TESTDIR/printenv.py" prechangegroup.forbid 1
   280   > prechangegroup.forbid = python "$TESTDIR/printenv.py" prechangegroup.forbid 1
   281   > EOF
   281   > EOF
   282   $ hg pull ../a
   282   $ hg pull ../a
   283   pulling from ../a
   283   pulling from ../a
   284   searching for changes
   284   searching for changes
   285   prechangegroup.forbid hook: HG_SOURCE=pull HG_URL=file:$TESTTMP/a
   285   prechangegroup.forbid hook: HG_SOURCE=pull HG_TXNID=TXN:* HG_URL=file:$TESTTMP/a (glob)
   286   abort: prechangegroup.forbid hook exited with status 1
   286   abort: prechangegroup.forbid hook exited with status 1
   287   [255]
   287   [255]
   288 
   288 
   289 pretxnchangegroup hook can see incoming changes, can roll back txn,
   289 pretxnchangegroup hook can see incoming changes, can roll back txn,
   290 incoming changes no longer there after
   290 incoming changes no longer there after
   300   adding changesets
   300   adding changesets
   301   adding manifests
   301   adding manifests
   302   adding file changes
   302   adding file changes
   303   added 1 changesets with 1 changes to 1 files
   303   added 1 changesets with 1 changes to 1 files
   304   4:539e4b31b6dc
   304   4:539e4b31b6dc
   305   pretxnchangegroup.forbid hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/b HG_SOURCE=pull HG_URL=file:$TESTTMP/a
   305   pretxnchangegroup.forbid hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/b HG_SOURCE=pull HG_TXNID=TXN:* HG_URL=file:$TESTTMP/a (glob)
   306   transaction abort!
   306   transaction abort!
   307   rollback completed
   307   rollback completed
   308   abort: pretxnchangegroup.forbid1 hook exited with status 1
   308   abort: pretxnchangegroup.forbid1 hook exited with status 1
   309   [255]
   309   [255]
   310   $ hg -q tip
   310   $ hg -q tip