tests/test-subrepo-paths.t
author Pierre-Yves David <pierre-yves.david@logilab.fr>
Tue, 24 Apr 2012 16:32:44 +0200
branchstable
changeset 16535 39d1f83eb05d
parent 16098 c6c9b83a1e8a
child 16913 f2719b387380
permissions -rw-r--r--
branchmap: server should not advertise secret changeset in branchmap (Issue3303) Discovery now use an overlay above branchmap to prune invisible "secret" changeset from branchmap. To minimise impact on the code during the code freeze, this is achieve by recomputing non-secret heads on the fly when any secret changeset exists. This is a computation heavy approach similar to the one used for visible heads. But few sever should contains secret changeset anyway. See comment in code for more robust approach. On local repo the wrapper is applied explicitly while the wire-protocol take care of wrapping branchmap call in a transparent way. This could be unified by the Peter Arrenbrecht and Sune Foldager proposal of a `peer` object. An inappropriate `(+i heads)` may still appear when pushing new changes on a repository with secret changeset. (see Issue3394 for details)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
     1
  $ hg init outer
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
     2
  $ cd outer
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     3
15150
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
     4
  $ echo '[paths]' >> .hg/hgrc
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
     5
  $ echo 'default = http://example.net/' >> .hg/hgrc
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
     6
11959
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
     7
hg debugsub with no remapping
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
     8
15150
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
     9
  $ echo 'sub = libfoo' > .hgsub
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    10
  $ hg add .hgsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    11
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    12
  $ hg debugsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    13
  path sub
15150
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    14
   source   libfoo
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    15
   revision 
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    16
11959
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
    17
hg debugsub with remapping
be33381882ad test-subrepo-paths: moved comment lines to where they belong
Martin Geisler <mg@lazybytes.net>
parents: 11914
diff changeset
    18
15150
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    19
  $ echo '[subpaths]' >> .hg/hgrc
16098
c6c9b83a1e8a tests: tighten checks for octal escapes in shell printf.
Jim Hague <jim.hague@acm.org>
parents: 15447
diff changeset
    20
  $ printf 'http://example.net/lib(.*) = C:\\libs\\\\1-lib\\\n' >> .hg/hgrc # no-check-code
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    21
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    22
  $ hg debugsub
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    23
  path sub
11961
f3075ffa6b30 subrepos: handle backslashes in subpaths
Martin Geisler <mg@lazybytes.net>
parents: 11959
diff changeset
    24
   source   C:\libs\foo-lib\
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    25
   revision 
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    26
13582
4f5b269f4ce6 test-subrepo-paths: fix typo
Martin Geisler <mg@lazybytes.net>
parents: 13578
diff changeset
    27
test cumulative remapping, the $HGRCPATH file is loaded first
13578
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    28
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    29
  $ echo '[subpaths]' >> $HGRCPATH
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    30
  $ echo 'libfoo = libbar' >> $HGRCPATH
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    31
  $ hg debugsub
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    32
  path sub
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    33
   source   C:\libs\bar-lib\
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    34
   revision 
e720b3324e35 test-subrepo-paths: test cummulative remapping
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    35
15150
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    36
test absolute source path -- testing with a URL is important since
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    37
standard os.path.join wont treat that as an absolute path
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    38
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    39
  $ echo 'abs = http://example.net/abs' > .hgsub
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    40
  $ hg debugsub
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    41
  path abs
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    42
   source   http://example.net/abs
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    43
   revision 
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    44
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    45
  $ echo 'abs = /abs' > .hgsub
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    46
  $ hg debugsub
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    47
  path abs
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    48
   source   /abs
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    49
   revision 
91dc8878f888 subrepo: try remapping subpaths using the "final" path
Martin Geisler <mg@aragost.com>
parents: 13582
diff changeset
    50
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    51
test bad subpaths pattern
11775
a8614c5a5e9a subrepos: support remapping of .hgsub source paths
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    52
11914
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    53
  $ cat > .hg/hgrc <<EOF
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    54
  > [subpaths]
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    55
  > .* = \1
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    56
  > EOF
e31e5eb8736c tests: unify test-subrepo-paths
Martin Geisler <mg@lazybytes.net>
parents: 11775
diff changeset
    57
  $ hg debugsub
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15150
diff changeset
    58
  abort: bad subrepository pattern in $TESTTMP/outer/.hg/hgrc:2: invalid group reference (glob)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11964
diff changeset
    59
  [255]