##// END OF EJS Templates
exchange: move bundle specification parsing from cmdutil...
exchange: move bundle specification parsing from cmdutil Clone bundles require a well-defined string to specify the type of bundle that is listed so clients can filter compatible file types. The `hg bundle` command and cmdutil.parsebundletype() already establish the beginnings of a bundle specification format. As part of formalizing this format specification so it can be used by clone bundles, we move the specification parsing bits verbatim to exchange.py, which is a more suitable place than cmdutil.py. A subsequent patch will refactor this code to make it more appropriate as a general API.

File last commit:

r26595:be048977 default
r26639:92d67e57 default
Show More
test-bundle-type.t
107 lines | 2.2 KiB | text/troff | Tads3Lexer
/ tests / test-bundle-type.t
Martin Geisler
tests: unify test-bundle-type
r11872 bundle w/o type option
$ hg init t1
$ hg init t2
$ cd t1
$ echo blablablablabla > file.txt
$ hg ci -Ama
adding file.txt
$ hg log | grep summary
summary: a
$ hg bundle ../b1 ../t2
searching for changes
1 changesets found
$ cd ../t2
$ hg pull ../b1
pulling from ../b1
requesting all changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
(run 'hg update' to get a working copy)
$ hg up
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg log | grep summary
summary: a
$ cd ..
test bundle types
Pierre-Yves David
bundle: extend the format of --type to support version and compression...
r26531 $ for t in "None" "bzip2" "gzip" "none-v2" "v2" "v1" "gzip-v1"; do
Martin Geisler
tests: unify test-bundle-type
r11872 > echo % test bundle type $t
> hg init t$t
> cd t1
> hg bundle -t $t ../b$t ../t$t
> cut -b 1-6 ../b$t | head -n 1
> cd ../t$t
Pierre-Yves David
test-bundle-type: replace unbundle with debugbundle...
r26511 > hg debugbundle ../b$t
> echo
Martin Geisler
tests: unify test-bundle-type
r11872 > cd ..
> done
% test bundle type None
searching for changes
1 changesets found
HG10UN
Pierre-Yves David
test-bundle-type: replace unbundle with debugbundle...
r26511 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
Martin Geisler
tests: unify test-bundle-type
r11872 % test bundle type bzip2
searching for changes
1 changesets found
HG10BZ
Pierre-Yves David
test-bundle-type: replace unbundle with debugbundle...
r26511 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
Martin Geisler
tests: unify test-bundle-type
r11872 % test bundle type gzip
searching for changes
1 changesets found
HG10GZ
Pierre-Yves David
test-bundle-type: replace unbundle with debugbundle...
r26511 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
Pierre-Yves David
bundle: extend the format of --type to support version and compression...
r26531 % test bundle type none-v2
searching for changes
1 changesets found
HG20\x00\x00 (esc)
Stream params: {}
Pierre-Yves David
getsubset: get the unpacker version from the bundler...
r26595 changegroup -- "{'version': '02'}"
Pierre-Yves David
bundle: extend the format of --type to support version and compression...
r26531 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
% test bundle type v2
searching for changes
1 changesets found
HG20\x00\x00 (esc)
Stream params: {'Compression': 'BZ'}
Pierre-Yves David
getsubset: get the unpacker version from the bundler...
r26595 changegroup -- "{'version': '02'}"
Pierre-Yves David
bundle: extend the format of --type to support version and compression...
r26531 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
% test bundle type v1
searching for changes
1 changesets found
HG10BZ
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
% test bundle type gzip-v1
searching for changes
1 changesets found
HG10GZ
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
Martin Geisler
tests: unify test-bundle-type
r11872
test garbage file
$ echo garbage > bgarbage
$ hg init tgarbage
$ cd tgarbage
$ hg pull ../bgarbage
Thomas Arendsen Hein
pull: print "pulling from foo" before accessing the other repo...
r24138 pulling from ../bgarbage
Matt Mackall
bundlerepo: remove duplication of bundle decompressors
r12044 abort: ../bgarbage: not a Mercurial bundle
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bundle-type
r11872 $ cd ..
test invalid bundle type
$ cd t1
$ hg bundle -a -t garbage ../bgarbage
abort: unknown bundle type specified with --type
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bundle-type
r11872 $ cd ..