tests/test-paths.t
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
Sat, 31 Mar 2012 00:04:08 +0900
branchstable
changeset 16313 e785456f9631
parent 15567 8b84d040d9f9
child 16843 61f3ca8e4d39
permissions -rw-r--r--
dirstate: avoid normalizing letter case on icasefs for exact match (issue3340) on icasefs, "hg qnew" fails to import changing letter case of filename already occurred in working directory, for example: $ hg rename a tmp $ hg rename tmp A $ hg qnew casechange $ hg status R a $ "hg qnew" invokes 'dirstate.walk()' via 'localrepository.commit()' with 'exact match' matching object having exact filenames of targets in ones 'files()'. current implementation of 'dirstate.walk()' always normalizes letter case of filenames from 'match.files()' on icasefs, even though exact matching is required. then, files only different in letter case are treated as one file. this patch prevents 'dirstate.walk()' from normalizing, if exact matching is required, even on icasefs. filenames for 'exact matching' are given not from user command line, but from dirstate walk result, manifest of changecontext, patch files or fixed list for specific system files (e.g.: '.hgtags'). in such case, case normalization should not be done, so this patch works well.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15567
8b84d040d9f9 tests: introduce 'hghave msys' to skip tests that would fail because of msys
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
     1
  $ "$TESTDIR/hghave" no-msys || exit 80 # MSYS will translate /foo/bar as if it was a real file path
8b84d040d9f9 tests: introduce 'hghave msys' to skip tests that would fail because of msys
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
     2
11785
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
     3
  $ hg init a
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
     4
  $ hg clone a b
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
     5
  updating to branch default
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
     6
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
     7
  $ cd a
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
     8
  $ echo '[paths]' >> .hg/hgrc
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
     9
  $ echo 'dupe = ../b' >> .hg/hgrc
12662
7285b2824fb7 ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 12640
diff changeset
    10
  $ echo 'expand = $SOMETHING/bar' >> .hg/hgrc
11785
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
    11
  $ hg in dupe
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    12
  comparing with $TESTTMP/b (glob)
11785
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
    13
  no changes found
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11785
diff changeset
    14
  [1]
11785
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
    15
  $ cd ..
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
    16
  $ hg -R a in dupe
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    17
  comparing with $TESTTMP/b (glob)
11785
7d9be960cd9a tests: unify test-paths
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 5951
diff changeset
    18
  no changes found
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11785
diff changeset
    19
  [1]
12662
7285b2824fb7 ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 12640
diff changeset
    20
  $ cd a
7285b2824fb7 ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 12640
diff changeset
    21
  $ hg paths
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    22
  dupe = $TESTTMP/b (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    23
  expand = $TESTTMP/a/$SOMETHING/bar (glob)
12662
7285b2824fb7 ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 12640
diff changeset
    24
  $ SOMETHING=foo hg paths
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    25
  dupe = $TESTTMP/b (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    26
  expand = $TESTTMP/a/foo/bar (glob)
12662
7285b2824fb7 ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 12640
diff changeset
    27
  $ SOMETHING=/foo hg paths
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    28
  dupe = $TESTTMP/b (glob)
12662
7285b2824fb7 ui.paths: expand paths directly in fixconfig (issue2373)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 12640
diff changeset
    29
  expand = /foo/bar
14331
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    30
  $ hg paths -q
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    31
  dupe
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    32
  expand
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    33
  $ hg paths dupe
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 14331
diff changeset
    34
  $TESTTMP/b (glob)
14331
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    35
  $ hg paths -q dupe
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    36
  $ hg paths unknown
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    37
  not found!
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    38
  [1]
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    39
  $ hg paths -q unknown
3b9a896af09c paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13797
diff changeset
    40
  [1]
13797
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    41
  $ cd ..
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    42
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    43
'file:' disables [paths] entries for clone destination
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    44
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    45
  $ cat >> $HGRCPATH <<EOF
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    46
  > [paths]
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    47
  > gpath1 = http://hg.example.com
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    48
  > EOF
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    49
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    50
  $ hg clone a gpath1
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    51
  abort: cannot create new http repository
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    52
  [255]
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    53
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    54
  $ hg clone a file:gpath1
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    55
  updating to branch default
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    56
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    57
  $ cd gpath1
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    58
  $ hg -q id
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    59
  000000000000
16d5e80876de test-paths.t: 'file:' disables [paths] entries for clone dest
Adrian Buehlmann <adrian@cadifra.com>
parents: 12662
diff changeset
    60