tests/test-convert-svn-sink.t
author Gregory Szorc <gregory.szorc@gmail.com>
Mon, 26 Mar 2018 11:00:16 -0700
changeset 37288 9bfcbe4f4745
parent 35704 41ef02ba329b
child 39723 5abc47d4ca6b
permissions -rw-r--r--
wireproto: add streams to frame-based protocol Previously, the frame-based protocol was just a series of frames, with each frame associated with a request ID. In order to scale the protocol, we'll want to enable the use of compression. While it is possible to enable compression at the socket/pipe level, this has its disadvantages. The big one is it undermines the point of frames being standalone, atomic units that can be read and written: if you add compression above the framing protocol, you are back to having a stream-based protocol as opposed to something frame-based. So in order to preserve frames, compression needs to occur at the frame payload level. Compressing each frame's payload individually will limit compression ratios because the window size of the compressor will be limited by the max frame size, which is 32-64kb as currently defined. It will also add CPU overhead, as it is more efficient for compressors to operate on fewer, larger blocks of data than more, smaller blocks. So compressing each frame independently is out. This means we need to compress each frame's payload as if it is part of a larger stream. The simplest approach is to have 1 stream per connection. This could certainly work. However, it has disadvantages (documented below). We could also have 1 stream per RPC/command invocation. (This is the model HTTP/2 goes with.) This also has disadvantages. The main disadvantage to one global stream is that it has the very real potential to create CPU bottlenecks doing compression. Networks are only getting faster and the performance of single CPU cores has been relatively flat. Newer compression formats like zstandard offer better CPU cycle efficiency than predecessors like zlib. But it still all too common to saturate your CPU with compression overhead long before you saturate the network pipe. The main disadvantage with streams per request is that you can't reap the benefits of the compression context for multiple requests. For example, if you send 1000 RPC requests (or HTTP/2 requests for that matter), the response to each would have its own compression context. The overall size of the raw responses would be larger because compression contexts wouldn't be able to reference data from another request or response. The approach for streams as implemented in this commit is to support N streams per connection and for streams to potentially span requests and responses. As explained by the added internals docs, this facilitates servers and clients delegating independent streams and compression to independent threads / CPU cores. This helps alleviate the CPU bottleneck of compression. This design also allows compression contexts to be reused across requests/responses. This can result in improved compression ratios and less overhead for compressors and decompressors having to build new contexts. Another feature that was defined was the ability for individual frames within a stream to declare whether that individual frame's payload uses the content encoding (read: compression) defined by the stream. The idea here is that some servers may serve data from a combination of caches and dynamic resolution. Data coming from caches may be pre-compressed. We want to facilitate servers being able to essentially stream bytes from caches to the wire with minimal overhead. Being able to mix and match with frames are compressed within a stream enables these types of advanced server functionality. This commit defines the new streams mechanism. Basic code for supporting streams in frames has been added. But that code is seriously lacking and doesn't fully conform to the defined protocol. For example, we don't close any streams. And support for content encoding within streams is not yet implemented. The change was rather invasive and I didn't think it would be reasonable to implement the entire feature in a single commit. For the record, I would have loved to reuse an existing multiplexing protocol to build the new wire protocol on top of. However, I couldn't find a protocol that offers the performance and scaling characteristics that I desired. Namely, it should support multiple compression contexts to facilitate scaling out to multiple CPU cores and compression contexts should be able to live longer than single RPC requests. HTTP/2 *almost* fits the bill. But the semantics of HTTP message exchange state that streams can only live for a single request-response. We /could/ tunnel on top of HTTP/2 streams and frames with HEADER and DATA frames. But there's no guarantee that HTTP/2 libraries and proxies would allow us to use HTTP/2 streams and frames without the HTTP message exchange semantics defined in RFC 7540 Section 8. Other RPC protocols like gRPC tunnel are built on top of HTTP/2 and thus preserve its semantics of stream per RPC invocation. Even QUIC does this. We could attempt to invent a higher-level stream that spans HTTP/2 streams. But this would be violating HTTP/2 because there is no guarantee that HTTP/2 streams are routed to the same server. The best we can do - which is what this protocol does - is shoehorn all request and response data into a single HTTP message and create streams within. At that point, we've defined a Content-Type in HTTP parlance. It just so happens our media type can also work as a standalone, stream-based protocol, without leaning on HTTP or similar protocol. Differential Revision: https://phab.mercurial-scm.org/D2907
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 21947
diff changeset
     1
#require svn13
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     2
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
     3
  $ svnupanddisplay()
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
     4
  > {
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
     5
  >     (
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
     6
  >        cd $1;
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
     7
  >        svn up -q;
17033
0413f68da85c tests: cleanup of svn url handling
Mads Kiilerich <mads@kiilerich.com>
parents: 17014
diff changeset
     8
  >        svn st -v | sed 's/  */ /g' | sort
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
     9
  >        limit=''
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    10
  >        if [ $2 -gt 0 ]; then
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    11
  >            limit="--limit=$2"
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    12
  >        fi
32958
75be14993fda cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
    13
  >        svn log --xml -v $limit | $PYTHON "$TESTDIR/svnxml.py"
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    14
  >     )
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    15
  > }
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    16
13519
43b3b761d9d1 tests: don't overwrite HGRCPATH
Martin Geisler <mg@aragost.com>
parents: 12370
diff changeset
    17
  $ cat >> $HGRCPATH <<EOF
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    18
  > [extensions]
17347
2da47de36b6f check-code: fix check for trailing whitespace on continued lines too
Mads Kiilerich <mads@kiilerich.com>
parents: 17044
diff changeset
    19
  > convert =
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    20
  > EOF
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    21
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    22
  $ hg init a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    23
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    24
Add
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    25
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    26
  $ echo a > a/a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    27
  $ mkdir -p a/d1/d2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    28
  $ echo b > a/d1/d2/b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    29
  $ hg --cwd a ci -d '0 0' -A -m 'add a file'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    30
  adding a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    31
  adding d1/d2/b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    32
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    33
Modify
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    34
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 23835
diff changeset
    35
  $ svn-safe-append.py a a/a
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    36
  $ hg --cwd a ci -d '1 0' -m 'modify a file'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    37
  $ hg --cwd a tip -q
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
    38
  1:e0e2b8a9156b
5808
80e40ef3d8b8 test-convert-svn-sink: wrap repetitive svn checks in a function
Patrick Mezard <pmezard@gmail.com>
parents: 5698
diff changeset
    39
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    40
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    41
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    42
  initializing svn repository 'a-hg'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    43
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    44
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    45
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    46
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    47
  1 add a file
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    48
  0 modify a file
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    49
  $ svnupanddisplay a-hg-wc 2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    50
   2 1 test d1
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
    51
   2 1 test d1/d2
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
    52
   2 1 test d1/d2/b
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    53
   2 2 test .
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    54
   2 2 test a
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    55
  revision: 2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    56
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    57
  msg: modify a file
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    58
   M /a
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    59
  revision: 1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    60
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    61
  msg: add a file
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    62
   A /a
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    63
   A /d1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    64
   A /d1/d2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    65
   A /d1/d2/b
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    66
  $ ls a a-hg-wc
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    67
  a:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    68
  a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    69
  d1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    70
  
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    71
  a-hg-wc:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    72
  a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    73
  d1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    74
  $ cmp a/a a-hg-wc/a
5808
80e40ef3d8b8 test-convert-svn-sink: wrap repetitive svn checks in a function
Patrick Mezard <pmezard@gmail.com>
parents: 5698
diff changeset
    75
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    76
Rename
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    77
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    78
  $ hg --cwd a mv a b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    79
  $ hg --cwd a ci -d '2 0' -m 'rename a file'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    80
  $ hg --cwd a tip -q
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
    81
  2:eb5169441d43
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    82
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    83
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    84
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    85
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    86
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    87
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    88
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    89
  0 rename a file
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    90
  $ svnupanddisplay a-hg-wc 1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
    91
   3 1 test d1
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
    92
   3 1 test d1/d2
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
    93
   3 1 test d1/d2/b
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    94
   3 3 test .
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    95
   3 3 test b
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    96
  revision: 3
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    97
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    98
  msg: rename a file
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
    99
   D /a
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   100
   A /b (from /a@2)
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   101
  $ ls a a-hg-wc
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   102
  a:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   103
  b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   104
  d1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   105
  
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   106
  a-hg-wc:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   107
  b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   108
  d1
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   109
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   110
Copy
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   111
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   112
  $ hg --cwd a cp b c
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   113
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   114
  $ hg --cwd a ci -d '3 0' -m 'copy a file'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   115
  $ hg --cwd a tip -q
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   116
  3:60effef6ab48
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   117
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   118
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   119
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   120
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   121
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   122
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   123
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   124
  0 copy a file
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   125
  $ svnupanddisplay a-hg-wc 1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   126
   4 1 test d1
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   127
   4 1 test d1/d2
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   128
   4 1 test d1/d2/b
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   129
   4 3 test b
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   130
   4 4 test .
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   131
   4 4 test c
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   132
  revision: 4
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   133
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   134
  msg: copy a file
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   135
   A /c (from /b@3)
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   136
  $ ls a a-hg-wc
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   137
  a:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   138
  b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   139
  c
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   140
  d1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   141
  
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   142
  a-hg-wc:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   143
  b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   144
  c
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   145
  d1
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   146
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   147
  $ hg --cwd a rm b
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13530
diff changeset
   148
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13530
diff changeset
   149
Remove
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13530
diff changeset
   150
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   151
  $ hg --cwd a ci -d '4 0' -m 'remove a file'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   152
  $ hg --cwd a tip -q
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   153
  4:87bbe3013fb6
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   154
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   155
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   156
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   157
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   158
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   159
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   160
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   161
  0 remove a file
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   162
  $ svnupanddisplay a-hg-wc 1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   163
   5 1 test d1
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   164
   5 1 test d1/d2
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   165
   5 1 test d1/d2/b
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   166
   5 4 test c
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   167
   5 5 test .
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   168
  revision: 5
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   169
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   170
  msg: remove a file
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   171
   D /b
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   172
  $ ls a a-hg-wc
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   173
  a:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   174
  c
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   175
  d1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   176
  
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   177
  a-hg-wc:
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   178
  c
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   179
  d1
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   180
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   181
Executable
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   182
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   183
#if execbit
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   184
  $ chmod +x a/c
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   185
#else
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   186
  $ echo fake >> a/c
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   187
#endif
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   188
  $ hg --cwd a ci -d '5 0' -m 'make a file executable'
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   189
#if execbit
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   190
  $ hg --cwd a tip -q
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   191
  5:ff42e473c340
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   192
#else
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   193
  $ hg --cwd a tip -q
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   194
  5:817a700c8cf1
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   195
#endif
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   196
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   197
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   198
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   199
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   200
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   201
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   202
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   203
  0 make a file executable
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   204
  $ svnupanddisplay a-hg-wc 1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   205
   6 1 test d1
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   206
   6 1 test d1/d2
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   207
   6 1 test d1/d2/b
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   208
   6 6 test .
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   209
   6 6 test c
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   210
  revision: 6
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   211
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   212
  msg: make a file executable
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   213
   M /c
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   214
#if execbit
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   215
  $ test -x a-hg-wc/c
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   216
#endif
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   217
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   218
#if symlink
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   219
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   220
Symlinks
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   221
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   222
  $ ln -s a/missing a/link
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   223
  $ hg --cwd a commit -Am 'add symlink'
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   224
  adding link
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   225
  $ hg --cwd a mv link newlink
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   226
  $ hg --cwd a commit -m 'move symlink'
23098
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   227
  $ hg convert -d svn a a-svnlink
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   228
  initializing svn repository 'a-svnlink'
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   229
  initializing svn working copy 'a-svnlink-wc'
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   230
  scanning source...
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   231
  sorting...
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   232
  converting...
23098
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   233
  7 add a file
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   234
  6 modify a file
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   235
  5 rename a file
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   236
  4 copy a file
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   237
  3 remove a file
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   238
  2 make a file executable
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   239
  1 add symlink
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   240
  0 move symlink
23098
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   241
  $ svnupanddisplay a-svnlink-wc 1
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   242
   8 1 test d1
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   243
   8 1 test d1/d2
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   244
   8 1 test d1/d2/b
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   245
   8 6 test c
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   246
   8 8 test .
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   247
   8 8 test newlink
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   248
  revision: 8
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   249
  author: test
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   250
  msg: move symlink
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   251
   D /link
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   252
   A /newlink (from /link@7)
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   253
23098
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   254
Make sure our changes don't affect the rest of the test cases
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   255
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   256
  $ hg --cwd a up 5
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   257
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   258
  $ hg --cwd a --config extensions.strip= strip -r 6
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   259
  saved backup bundle to $TESTTMP/a/.hg/strip-backup/bd4f7b7a7067-ed505e42-backup.hg
23098
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   260
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   261
#endif
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   262
22300
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   263
Convert with --full adds and removes files that didn't change
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   264
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   265
  $ touch a/f
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   266
  $ hg -R a ci -Aqmf
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   267
  $ echo "rename c d" > filemap
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   268
  $ hg convert -d svn a --filemap filemap --full
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   269
  assuming destination a-hg
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   270
  initializing svn working copy 'a-hg-wc'
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   271
  scanning source...
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   272
  sorting...
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   273
  converting...
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   274
  0 f
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   275
  $ svnupanddisplay a-hg-wc 1
23098
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   276
   7 7 test .
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   277
   7 7 test d
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   278
   7 7 test f
675e415568af test-convert-svn-sink: properly isolate symlink section
Matt Mackall <mpm@selenic.com>
parents: 22300
diff changeset
   279
  revision: 7
22300
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   280
  author: test
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   281
  msg: f
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   282
   D /c
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   283
   A /d
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   284
   D /d1
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   285
   A /f
35ab037de989 convert: introduce --full for converting all files
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   286
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   287
  $ rm -rf a a-hg a-hg-wc
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   288
16909
b6fd2f8909ff tests: remove 'hghave symlink' from test-convert-svn-sink.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
   289
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   290
Executable in new directory
5698
b63ef7b1441c convert: svn-sink: copy and set properties after adding dirs/files
Maxim Dounin <mdounin@mdounin.ru>
parents: 5538
diff changeset
   291
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   292
  $ hg init a
5698
b63ef7b1441c convert: svn-sink: copy and set properties after adding dirs/files
Maxim Dounin <mdounin@mdounin.ru>
parents: 5538
diff changeset
   293
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   294
  $ mkdir a/d1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   295
  $ echo a > a/d1/a
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   296
#if execbit
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   297
  $ chmod +x a/d1/a
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   298
#else
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   299
  $ echo fake >> a/d1/a
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   300
#endif
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   301
  $ hg --cwd a ci -d '0 0' -A -m 'add executable file in new directory'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   302
  adding d1/a
5698
b63ef7b1441c convert: svn-sink: copy and set properties after adding dirs/files
Maxim Dounin <mdounin@mdounin.ru>
parents: 5538
diff changeset
   303
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   304
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   305
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   306
  initializing svn repository 'a-hg'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   307
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   308
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   309
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   310
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   311
  0 add executable file in new directory
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   312
  $ svnupanddisplay a-hg-wc 1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   313
   1 1 test .
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   314
   1 1 test d1
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   315
   1 1 test d1/a
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   316
  revision: 1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   317
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   318
  msg: add executable file in new directory
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   319
   A /d1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   320
   A /d1/a
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   321
#if execbit
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   322
  $ test -x a-hg-wc/d1/a
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16512
diff changeset
   323
#endif
5698
b63ef7b1441c convert: svn-sink: copy and set properties after adding dirs/files
Maxim Dounin <mdounin@mdounin.ru>
parents: 5538
diff changeset
   324
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   325
Copy to new directory
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   326
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   327
  $ mkdir a/d2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   328
  $ hg --cwd a cp d1/a d2/a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   329
  $ hg --cwd a ci -d '1 0' -A -m 'copy file to new directory'
5698
b63ef7b1441c convert: svn-sink: copy and set properties after adding dirs/files
Maxim Dounin <mdounin@mdounin.ru>
parents: 5538
diff changeset
   330
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   331
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   332
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   333
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   334
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   335
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   336
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   337
  0 copy file to new directory
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   338
  $ svnupanddisplay a-hg-wc 1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   339
   2 1 test d1
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   340
   2 1 test d1/a
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   341
   2 2 test .
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   342
   2 2 test d2
35400
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 32958
diff changeset
   343
   2 2 test d2/a
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   344
  revision: 2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   345
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   346
  msg: copy file to new directory
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   347
   A /d2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   348
   A /d2/a (from /d1/a@1)
5698
b63ef7b1441c convert: svn-sink: copy and set properties after adding dirs/files
Maxim Dounin <mdounin@mdounin.ru>
parents: 5538
diff changeset
   349
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   350
Branchy history
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   351
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   352
  $ hg init b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   353
  $ echo base > b/b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   354
  $ hg --cwd b ci -d '0 0' -Ambase
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   355
  adding b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   356
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 23835
diff changeset
   357
  $ svn-safe-append.py left-1 b/b
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   358
  $ echo left-1 > b/left-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   359
  $ hg --cwd b ci -d '1 0' -Amleft-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   360
  adding left-1
5698
b63ef7b1441c convert: svn-sink: copy and set properties after adding dirs/files
Maxim Dounin <mdounin@mdounin.ru>
parents: 5538
diff changeset
   361
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 23835
diff changeset
   362
  $ svn-safe-append.py left-2 b/b
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   363
  $ echo left-2 > b/left-2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   364
  $ hg --cwd b ci -d '2 0' -Amleft-2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   365
  adding left-2
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   366
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   367
  $ hg --cwd b up 0
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   368
  1 files updated, 0 files merged, 2 files removed, 0 files unresolved
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   369
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 23835
diff changeset
   370
  $ svn-safe-append.py right-1 b/b
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   371
  $ echo right-1 > b/right-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   372
  $ hg --cwd b ci -d '3 0' -Amright-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   373
  adding right-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   374
  created new head
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   375
25472
4d2b9b304ad0 tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents: 23835
diff changeset
   376
  $ svn-safe-append.py right-2 b/b
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   377
  $ echo right-2 > b/right-2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   378
  $ hg --cwd b ci -d '4 0' -Amright-2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   379
  adding right-2
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   380
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   381
  $ hg --cwd b up -C 2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   382
  3 files updated, 0 files merged, 2 files removed, 0 files unresolved
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   383
  $ hg --cwd b merge
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   384
  merging b
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 25472
diff changeset
   385
  warning: conflicts while merging b! (edit, then use 'hg resolve --mark')
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   386
  2 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35400
diff changeset
   387
  use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   388
  [1]
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   389
  $ hg --cwd b revert -r 2 b
17014
50fbe9063ff2 tests: convert some 'hghave no-outer-repo' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16909
diff changeset
   390
  $ hg --cwd b resolve -m b
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21267
diff changeset
   391
  (no more unresolved files)
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   392
  $ hg --cwd b ci -d '5 0' -m 'merge'
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   393
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   394
Expect 4 changes
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   395
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   396
  $ hg convert -d svn b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   397
  assuming destination b-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   398
  initializing svn repository 'b-hg'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   399
  initializing svn working copy 'b-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   400
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   401
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   402
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   403
  5 base
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   404
  4 left-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   405
  3 left-2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   406
  2 right-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   407
  1 right-2
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   408
  0 merge
5513
f0c58fd4b798 convert: add support for Subversion as a sink
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   409
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   410
  $ svnupanddisplay b-hg-wc 0
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   411
   4 2 test left-1
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   412
   4 3 test b
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   413
   4 3 test left-2
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   414
   4 4 test .
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   415
   4 4 test right-1
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   416
   4 4 test right-2
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   417
  revision: 4
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   418
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   419
  msg: merge
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   420
   A /right-1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   421
   A /right-2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   422
  revision: 3
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   423
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   424
  msg: left-2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   425
   M /b
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   426
   A /left-2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   427
  revision: 2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   428
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   429
  msg: left-1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   430
   M /b
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   431
   A /left-1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   432
  revision: 1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   433
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   434
  msg: base
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   435
   A /b
11835
14db59e3b248 convert: Test svn sink for a repo with tags.
Daniel J. Lauk <daniel.lauk@gmail.com>
parents: 8049
diff changeset
   436
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   437
Tags are not supported, but must not break conversion
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   438
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   439
  $ rm -rf a a-hg a-hg-wc
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   440
  $ hg init a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   441
  $ echo a > a/a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   442
  $ hg --cwd a ci -d '0 0' -A -m 'Add file a'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   443
  adding a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   444
  $ hg --cwd a tag -d '1 0' -m 'Tagged as v1.0' v1.0
11835
14db59e3b248 convert: Test svn sink for a repo with tags.
Daniel J. Lauk <daniel.lauk@gmail.com>
parents: 8049
diff changeset
   445
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   446
  $ hg convert -d svn a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   447
  assuming destination a-hg
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   448
  initializing svn repository 'a-hg'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   449
  initializing svn working copy 'a-hg-wc'
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   450
  scanning source...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   451
  sorting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   452
  converting...
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   453
  1 Add file a
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   454
  0 Tagged as v1.0
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   455
  writing Subversion tags is not yet implemented
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   456
  $ svnupanddisplay a-hg-wc 2
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   457
   2 1 test a
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   458
   2 2 test .
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   459
   2 2 test .hgtags
16512
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   460
  revision: 2
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   461
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   462
  msg: Tagged as v1.0
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   463
   A /.hgtags
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   464
  revision: 1
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   465
  author: test
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   466
  msg: Add file a
c58bdecdb800 test-convert-svn-sink: add helper to smooth svn xml output
Patrick Mezard <patrick@mezard.eu>
parents: 15501
diff changeset
   467
   A /a
12370
f98010f57a5e tests: unify test-convert-svn-*
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 12343
diff changeset
   468
  $ rm -rf a a-hg a-hg-wc