tests/test-casecollision.t
author Siddharth Agarwal <sid0@fb.com>
Wed, 03 Feb 2016 13:12:06 -0800
changeset 28022 e397b58c0563
parent 22046 7a9cbb315d84
child 48367 0b8e076e878c
permissions -rw-r--r--
rebase: respect checkunknown and checkignored in more cases checkunknown and checkignored are currently respected for updates and regular merges, but not for certain kinds of rebases. To be precise, they aren't respected for rebases when: (1) we're rebasing while currently on the destination commit, and (2) an untracked or ignored file F is currently in the working copy, and (3) the same file F is in a source commit, and (4) F has different contents in the source commit. This happens because rebases set force to True when calling merge.update. Setting force to True makes a lot of sense in general, but it turns out the force option is overloaded: there's a deprecated '--force' option in merge that allows you to merge in outstanding changes, including changes in untracked files. We use the 'mergeforce' parameter to tell those two cases apart. I think the behavior during rebases when checkunknown is 'abort' (the default) is wrong -- we should abort on or overwrite differing untracked files, not try to merge them in. However that currently breaks rebases by aborting in the middle -- we need better handling for that case before we can change the default.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 17096
diff changeset
     1
#require no-icasefs
14068
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     2
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     3
test file addition with colliding case
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     4
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     5
  $ hg init repo1
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     6
  $ cd repo1
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     7
  $ echo a > a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     8
  $ echo A > A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     9
  $ hg add a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    10
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    11
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    12
  ? A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    13
  $ hg add --config ui.portablefilenames=abort A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    14
  abort: possible case-folding collision for A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    15
  [255]
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    16
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    17
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    18
  ? A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    19
  $ hg add A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    20
  warning: possible case-folding collision for A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    21
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    22
  A A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    23
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    24
  $ hg forget A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    25
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    26
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    27
  ? A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    28
  $ hg add --config ui.portablefilenames=no A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    29
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    30
  A A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    31
  A a
17096
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    32
  $ mkdir b
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    33
  $ touch b/c b/D
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    34
  $ hg add b
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    35
  adding b/D
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    36
  adding b/c
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    37
  $ touch b/d b/C
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    38
  $ hg add b/C
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    39
  warning: possible case-folding collision for b/C
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    40
  $ hg add b/d
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    41
  warning: possible case-folding collision for b/d
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    42
  $ touch b/a1 b/a2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    43
  $ hg add b
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    44
  adding b/a1
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    45
  adding b/a2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    46
  $ touch b/A2 b/a1.1
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    47
  $ hg add b/a1.1 b/A2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    48
  warning: possible case-folding collision for b/A2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    49
  $ touch b/f b/F
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    50
  $ hg add b/f b/F
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    51
  warning: possible case-folding collision for b/f
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    52
  $ touch g G
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    53
  $ hg add g G
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    54
  warning: possible case-folding collision for g
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    55
  $ mkdir h H
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    56
  $ touch h/x H/x
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    57
  $ hg add h/x H/x
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    58
  warning: possible case-folding collision for h/x
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    59
  $ touch h/s H/s
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    60
  $ hg add h/s
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    61
  $ hg add H/s
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    62
  warning: possible case-folding collision for H/s
14178
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    63
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    64
case changing rename must not warn or abort
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    65
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    66
  $ echo c > c
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    67
  $ hg ci -qAmx
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    68
  $ hg mv c C
14068
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    69
  $ cd ..