tests/test-hup.t
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Tue, 07 Dec 2010 16:08:16 +0100
changeset 13121 bf763946f8b0
parent 12413 f8dc83689f19
child 14266 89e7d35e0ef0
permissions -rw-r--r--
make_file: always return a fresh file handle that can be closed Currently, cmdutil.make_file() will return a freshly made file handle, except when given a pattern of '-'. If callers would want to close the handle, they would have to make sure that it's neither sys.stdin or sys.stdout. Instead, returning a duplicate of either of the two ensures that make_file() lives up to its name and creates a new file handle regardless of the input.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     1
Test hangup signal in the middle of transaction
642
5d6177b72fcc Update tests
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     2
12413
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     3
  $ "$TESTDIR/hghave" fifo || exit 80
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     4
  $ hg init
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     5
  $ mkfifo p
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     6
  $ hg serve --stdio < p &
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     7
  $ P=$!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     8
  $ (echo lock; echo addchangegroup; sleep 5) > p &
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
     9
  $ Q=$!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    10
  $ sleep 3
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    11
  0
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    12
  0
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    13
  adding changesets
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    14
  $ kill -HUP $P
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    15
  $ wait
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    16
  transaction abort!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    17
  rollback completed
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    18
  killed!
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    19
  $ echo .hg/* .hg/store/*
f8dc83689f19 tests: unify test-hup
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
    20
  .hg/00changelog.i .hg/journal.branch .hg/journal.desc .hg/journal.dirstate .hg/requires .hg/store .hg/store/00changelog.i .hg/store/00changelog.i.a