tests/test-locate.t
author Augie Fackler <augie@google.com>
Tue, 20 Jan 2015 13:38:07 -0500
changeset 24018 26d6a6a78c1d
parent 23348 bbe56e07e07a
child 25636 bfe9ed85f27c
permissions -rw-r--r--
obsolete: use parsers.fm1readmarker if it exists for a ~38% perf win This moves perfloadmarkers on my linux workstation (63494 markers from mpm, crew, and myself) performance from ! wall 0.357657 comb 0.360000 user 0.350000 sys 0.010000 (best of 28) to ! wall 0.222345 comb 0.220000 user 0.210000 sys 0.010000 (best of 41) which is a pretty good improvement. On my BSD machine, which is ancient and slow, before: ! wall 3.584964 comb 3.578125 user 3.539062 sys 0.039062 (best of 3) after: ! wall 2.267974 comb 2.265625 user 2.195312 sys 0.070312 (best of 5) I feel like we could do better by moving the whole generator function into C, but I didn't want to tackle that right away.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
     1
  $ hg init repo
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
     2
  $ cd repo
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     3
  $ echo 0 > a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     4
  $ echo 0 > b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     5
  $ echo 0 > t.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     6
  $ mkdir t
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     7
  $ echo 0 > t/x
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     8
  $ echo 0 > t/b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     9
  $ echo 0 > t/e.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    10
  $ mkdir dir.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    11
  $ echo 0 > dir.h/foo
4234
fe0c0a317c09 make the output of test-locate more readable
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4196
diff changeset
    12
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    13
  $ hg ci -A -m m
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    14
  adding a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    15
  adding b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    16
  adding dir.h/foo
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    17
  adding t.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    18
  adding t/b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    19
  adding t/e.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    20
  adding t/x
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    21
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    22
  $ touch nottracked
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    23
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    24
  $ hg locate a
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    25
  a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    26
12365
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    27
  $ hg locate NONEXISTENT
22f3353bcc36 tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12316
diff changeset
    28
  [1]
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    29
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    30
  $ hg locate
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    31
  a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    32
  b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    33
  dir.h/foo
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    34
  t.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    35
  t/b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    36
  t/e.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    37
  t/x
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    38
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    39
  $ hg rm a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    40
  $ hg ci -m m
4234
fe0c0a317c09 make the output of test-locate more readable
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4196
diff changeset
    41
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    42
  $ hg locate a
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12206
diff changeset
    43
  [1]
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    44
  $ hg locate NONEXISTENT
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12206
diff changeset
    45
  [1]
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    46
  $ hg locate relpath:NONEXISTENT
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12206
diff changeset
    47
  [1]
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    48
  $ hg locate
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    49
  b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    50
  dir.h/foo
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    51
  t.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    52
  t/b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    53
  t/e.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    54
  t/x
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    55
  $ hg locate -r 0 a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    56
  a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    57
  $ hg locate -r 0 NONEXISTENT
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12206
diff changeset
    58
  [1]
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    59
  $ hg locate -r 0 relpath:NONEXISTENT
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12206
diff changeset
    60
  [1]
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    61
  $ hg locate -r 0
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    62
  a
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    63
  b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    64
  dir.h/foo
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    65
  t.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    66
  t/b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    67
  t/e.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    68
  t/x
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    69
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    70
-I/-X with relative path should work:
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    71
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    72
  $ cd t
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    73
  $ hg locate
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    74
  b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    75
  dir.h/foo
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    76
  t.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    77
  t/b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    78
  t/e.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    79
  t/x
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    80
  $ hg locate -I ../t
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    81
  t/b
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    82
  t/e.h
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    83
  t/x
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    84
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12365
diff changeset
    85
Issue294: hg remove --after dir fails when dir.* also exists
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    86
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    87
  $ cd ..
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    88
  $ rm -r t
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    89
22591
9fe33afc00b4 files: actually filter out removed files
Siddharth Agarwal <sid0@fb.com>
parents: 22430
diff changeset
    90
  $ hg rm t/b
9fe33afc00b4 files: actually filter out removed files
Siddharth Agarwal <sid0@fb.com>
parents: 22430
diff changeset
    91
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    92
  $ hg locate 't/**'
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
    93
  t/b (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
    94
  t/e.h (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
    95
  t/x (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    96
22423
edf07a804ac4 files: add new command unifying locate and manifest functionality
Matt Mackall <mpm@selenic.com>
parents: 16912
diff changeset
    97
  $ hg files
edf07a804ac4 files: add new command unifying locate and manifest functionality
Matt Mackall <mpm@selenic.com>
parents: 16912
diff changeset
    98
  b
23348
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
    99
  dir.h/foo (glob)
22423
edf07a804ac4 files: add new command unifying locate and manifest functionality
Matt Mackall <mpm@selenic.com>
parents: 16912
diff changeset
   100
  t.h
23348
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
   101
  t/e.h (glob)
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
   102
  t/x (glob)
22423
edf07a804ac4 files: add new command unifying locate and manifest functionality
Matt Mackall <mpm@selenic.com>
parents: 16912
diff changeset
   103
  $ hg files b
edf07a804ac4 files: add new command unifying locate and manifest functionality
Matt Mackall <mpm@selenic.com>
parents: 16912
diff changeset
   104
  b
edf07a804ac4 files: add new command unifying locate and manifest functionality
Matt Mackall <mpm@selenic.com>
parents: 16912
diff changeset
   105
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   106
  $ mkdir otherdir
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   107
  $ cd otherdir
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   108
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   109
  $ hg locate b
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   110
  ../b (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   111
  ../t/b (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   112
  $ hg locate '*.h'
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   113
  ../t.h (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   114
  ../t/e.h (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   115
  $ hg locate path:t/x
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   116
  ../t/x (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   117
  $ hg locate 're:.*\.h$'
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   118
  ../t.h (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   119
  ../t/e.h (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   120
  $ hg locate -r 0 b
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   121
  ../b (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   122
  ../t/b (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   123
  $ hg locate -r 0 '*.h'
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   124
  ../t.h (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   125
  ../t/e.h (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   126
  $ hg locate -r 0 path:t/x
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   127
  ../t/x (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   128
  $ hg locate -r 0 're:.*\.h$'
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   129
  ../t.h (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 13956
diff changeset
   130
  ../t/e.h (glob)
12206
844d25bf65a3 tests: unify test-locate
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   131
22430
968247e8f4ac formatter: add pickle format
Matt Mackall <mpm@selenic.com>
parents: 22423
diff changeset
   132
  $ hg files
23348
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
   133
  ../b (glob)
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
   134
  ../dir.h/foo (glob)
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
   135
  ../t.h (glob)
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
   136
  ../t/e.h (glob)
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 22591
diff changeset
   137
  ../t/x (glob)
22430
968247e8f4ac formatter: add pickle format
Matt Mackall <mpm@selenic.com>
parents: 22423
diff changeset
   138
  $ hg files .
968247e8f4ac formatter: add pickle format
Matt Mackall <mpm@selenic.com>
parents: 22423
diff changeset
   139
  [1]
968247e8f4ac formatter: add pickle format
Matt Mackall <mpm@selenic.com>
parents: 22423
diff changeset
   140
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 15447
diff changeset
   141
  $ cd ../..