tests/test-blackbox.t
author Durham Goode <durham@fb.com>
Sat, 09 Feb 2013 13:35:30 -0800
changeset 18674 c61b49d059eb
child 18677 539210ed2069
permissions -rw-r--r--
blackbox: tests for the blackbox extension A few tests to cover the blackbox extension. Covers commands, hooks, and incoming changes.

setup
  $ cat > mock.py <<EOF
  > from mercurial import util
  > import getpass
  > 
  > def makedate():
  >     return 0, 0
  > def getuser():
  >     return 'bob'
  > # mock the date and user apis so the output is always the same
  > def uisetup(ui):
  >     util.makedate = makedate
  >     getpass.getuser = getuser
  > EOF
  $ cat >> $HGRCPATH <<EOF
  > [extensions]
  > blackbox=
  > mock=`pwd`/mock.py
  > EOF
  $ hg init blackboxtest
  $ cd blackboxtest

command, exit codes, and duration

  $ echo a > a
  $ hg add a
  $ hg blackbox
  1970/01/01 00:00:00 bob> add a
  1970/01/01 00:00:00 bob> add exited 0 after * seconds (glob)

extension and python hooks - use the eol extension for a pythonhook

  $ echo '[extensions]' >> .hg/hgrc
  $ echo 'eol=' >> .hg/hgrc
  $ echo '[hooks]' >> .hg/hgrc
  $ echo 'update = echo hooked' >> .hg/hgrc
  $ hg update
  hooked
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ hg blackbox -l 4
  1970/01/01 00:00:00 bob> update
  1970/01/01 00:00:00 bob> pythonhook-preupdate: hgext.eol.preupdate finished in * seconds (glob)
  1970/01/01 00:00:00 bob> exthook-update: echo hooked finished in * seconds (glob)
  1970/01/01 00:00:00 bob> update exited False after * seconds (glob)

incoming change tracking

  $ hg clone . ../blackboxtest2
  updating to branch default
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ hg commit -ma
  $ cd ../blackboxtest2
  $ hg pull
  pulling from $TESTTMP/blackboxtest
  requesting all changes
  adding changesets
  adding manifests
  adding file changes
  added 1 changesets with 1 changes to 1 files
  (run 'hg update' to get a working copy)
  $ hg blackbox -l 3
  1970/01/01 00:00:00 bob> pull
  1970/01/01 00:00:00 bob> 1 incoming changes - new heads: cb9a9f314b8b (glob)
  1970/01/01 00:00:00 bob> pull exited None after * seconds (glob)

cleanup
  $ cd ..