tests/test-options.t
author Kyle Lippincott <spectral@google.com>
Mon, 16 Sep 2019 12:44:38 -0700
changeset 4848 535ab2609e45
parent 4185 9bce7e6c18b3
child 4354 cb39b767ad3c
permissions -rw-r--r--
cmdstate: introduce a "saver" contextmanager and use it in place of save() Previously, the state was only saved in some paths out of these functions. This can be problematic, if the user ctrl-c's (or `kill -9`'s) the process, or we exit out of `relocate` for anything besides the "expected" reason, we won't record that we were in the middle of an evolve. One of our users has discovered that this leaves hg in a weird state; the user did something like this: ``` $ hg evolve <something goes wrong with the merge tool, hits ctrl-c> <deals with the merge conflicts> $ hg evolve --continue abort: no interrupted evolve to continue $ hg evolve abort: uncommitted changes # Note: commands.status.verbose=True is set. $ hg status M foo # The repository is in an unfinished *update* state. # No unresolved merge conflicts # To continue: hg update ``` The user did an `hg update`, but it didn't actually do anything besides take it out of the unfinished update state (the files were still dirty in the working directory).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1226
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     2
  > [ui]
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     3
  > logtemplate={rev}:{node|short}[{bookmarks}] ({obsolete}/{phase}) {desc|firstline}\n
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     4
  > [extensions]
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     5
  > EOF
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1226
diff changeset
     6
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
1226
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     7
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     8
  $ mkcommit() {
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
     9
  >    echo "$1" > "$1"
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    10
  >    hg add "$1"
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    11
  >    hg ci -m "add $1"
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    12
  > }
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    13
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    14
  $ hg init repo
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    15
  $ cd repo
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    16
  $ mkcommit a
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    17
  $ mkcommit b
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    18
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    19
test disabling commands
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    20
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    21
  $ cat >> .hg/hgrc <<EOF
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    22
  > [experimental]
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    23
  > evolution=createmarkers
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    24
  >   allowunstable
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    25
  >   exchange
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    26
  > EOF
4185
9bce7e6c18b3 tests: remove a"| head -n 2" that just hides an error code
Martin von Zweigbergk <martinvonz@google.com>
parents: 4181
diff changeset
    27
  $ hg prune
1226
901d2f4b21a9 config: allow disabling commands
Durham Goode <durham@fb.com>
parents:
diff changeset
    28
  hg: unknown command 'prune'
4181
ab3581bc0637 branching: preserve the expected output on default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4168
diff changeset
    29
  (use 'hg help' for a list of commands)
4185
9bce7e6c18b3 tests: remove a"| head -n 2" that just hides an error code
Martin von Zweigbergk <martinvonz@google.com>
parents: 4181
diff changeset
    30
  [255]