tests/test-casecollision.t
author Siddharth Agarwal <sid0@fb.com>
Sat, 16 Nov 2013 13:19:06 -0800
changeset 20043 88bd8df008f2
parent 17096 14e44933d175
child 22046 7a9cbb315d84
permissions -rw-r--r--
scmutil: rename filecacheentry to filecachesubentry Upcoming patches will allow the file cache to watch over multiple files, and call the decorated function again if any of the files change. The particular use case for this is the bookmark store, which needs to be invalidated if either .hg/bookmarks or .hg/bookmarks.current changes. (This doesn't currently happen, which is a bug. This bug will also be fixed in upcoming patches.)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
14068
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     1
run only on case-sensitive filesystems
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
  $ "$TESTDIR/hghave" no-icasefs || exit 80
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
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
     6
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     7
  $ 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
     8
  $ cd repo1
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
     9
  $ 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
    10
  $ 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
    11
  $ 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
    12
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    13
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    14
  ? A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    15
  $ 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
    16
  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
    17
  [255]
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    18
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    19
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    20
  ? 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 add A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    22
  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
    23
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    24
  A A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    25
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    26
  $ 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
    27
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    28
  A a
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    29
  ? A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    30
  $ 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
    31
  $ hg st
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    32
  A A
04ce8fa1015d add: notify when adding a file that would cause a case-folding collision
Kevin Gessner <kevin@kevingessner.com>
parents:
diff changeset
    33
  A a
17096
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    34
  $ mkdir b
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    35
  $ touch b/c b/D
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    36
  $ hg add b
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    37
  adding b/D
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    38
  adding b/c
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    39
  $ touch b/d b/C
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    40
  $ hg add b/C
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    41
  warning: possible case-folding collision for b/C
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    42
  $ hg add b/d
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    43
  warning: possible case-folding collision for b/d
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    44
  $ touch b/a1 b/a2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    45
  $ hg add b
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    46
  adding b/a1
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    47
  adding b/a2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    48
  $ touch b/A2 b/a1.1
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    49
  $ hg add b/a1.1 b/A2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    50
  warning: possible case-folding collision for b/A2
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    51
  $ touch b/f b/F
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    52
  $ hg add b/f b/F
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    53
  warning: possible case-folding collision for b/f
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    54
  $ touch g G
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    55
  $ hg add g G
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    56
  warning: possible case-folding collision for g
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    57
  $ mkdir h H
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    58
  $ touch h/x H/x
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    59
  $ hg add h/x H/x
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    60
  warning: possible case-folding collision for h/x
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    61
  $ touch h/s H/s
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    62
  $ hg add h/s
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    63
  $ hg add H/s
14e44933d175 casecollision: add tests
Joshua Redstone <joshua.redstone@fb.com>
parents: 14178
diff changeset
    64
  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
    65
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    66
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
    67
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    68
  $ echo c > c
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    69
  $ hg ci -qAmx
524c560e2d32 test-casecollision.t: add test for case changing rename
Adrian Buehlmann <adrian@cadifra.com>
parents: 14068
diff changeset
    70
  $ 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
    71
  $ cd ..