tests/test-update-dest.t
author Gregory Szorc <gregory.szorc@gmail.com>
Fri, 14 Apr 2017 00:33:56 -0700
changeset 32002 bf855efe5664
parent 31845 86246530b8d2
child 33998 8abbae93045a
permissions -rw-r--r--
httppeer: wrap HTTPResponse.read() globally There were a handful of places in the code where HTTPResponse.read() was called with no explicit error handling or with inconsistent error handling. In order to eliminate this class of bug, we globally swap out HTTPResponse.read() with a unified error handler. I initially attempted to fix all call sites. However, after going down that rabbit hole, I figured it was best to just change read() to do what we want. This appears to be a worthwhile change, as the tests demonstrate many of our uncaught exceptions go away. To better represent this class of failure, we introduce a new error type. The main benefit over IOError is it can hold a hint. I'm receptive to tweaking its name or inheritance.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31844
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     1
Test update.requiredest
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     2
  $ cd $TESTTMP
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     3
  $ cat >> $HGRCPATH <<EOF
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     4
  > [commands]
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     5
  > update.requiredest = True
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     6
  > EOF
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     7
  $ hg init repo
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     8
  $ cd repo
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
     9
  $ echo a >> a
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    10
  $ hg commit -qAm aa
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    11
  $ hg up
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    12
  abort: you must specify a destination
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    13
  (for example: hg update ".::")
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    14
  [255]
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    15
  $ hg up .
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    16
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    17
  $ HGPLAIN=1 hg up
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    18
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    19
  $ hg --config commands.update.requiredest=False up
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    20
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    21
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    22
  $ cd ..
478999e8281d tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
    23
31845
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    24
Check update.requiredest interaction with pull --update
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    25
  $ hg clone repo clone
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    26
  updating to branch default
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    27
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    28
  $ cd repo
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    29
  $ echo a >> a
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    30
  $ hg commit -qAm aa
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    31
  $ cd ../clone
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    32
  $ hg pull --update
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    33
  abort: update destination required by configuration
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    34
  (use hg pull followed by hg update DEST)
86246530b8d2 pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents: 31844
diff changeset
    35
  [255]