tests/test-bundle-type.t
author Augie Fackler <raf@durin42.com>
Fri, 13 Mar 2015 14:20:13 -0400
changeset 24305 867c3649be5d
parent 24138 eabe44ec5af5
child 26511 bb3d961c1648
permissions -rw-r--r--
cvsps: use a different tiebreaker to avoid flaky test After adding some sneaky debug printing[0], I determined that this test flaked when a CVS commit containing two files starts too close to the end of a second, thus putting file "a" in one second and "b/c" in the following second. The secondary sort key meant that these changes sorted in a different order when the timestamps were different than they did when they matched. As far as I can tell, CVS walks through the files in a stable order, so by sorting on the filenames in cvsps we'll get stable output. It's fine for us to switch from sorting on the branchpoint as a secondary key because this was already the point when we didn't care, and we're just trying to break ties in a stable way. It's unclear to be if having the branchpoint present matters anymore, but it doesn't really hurt to leave it. With this change in place, I was able to run test-convert-cvs over 650 times in a row without a failure. test-convert-cvcs-synthetic.t appears to still be flaky, but I don't think it's *worse* than it was before - just not better (I observed one flaky failure in 200 runs on that test). 0: The helpful debug hack ended up being this, in case it's useful to future flaky test assassins: --- a/hgext/convert/cvsps.py +++ b/hgext/convert/cvsps.py @@ -854,6 +854,8 @@ def debugcvsps(ui, *args, **opts): ui.write(('Branch: %s\n' % (cs.branch or 'HEAD'))) ui.write(('Tag%s: %s \n' % (['', 's'][len(cs.tags) > 1], ','.join(cs.tags) or '(none)'))) + if cs.comment == 'ci1' and (cs.id == 6) == bool(cs.branchpoints): + ui.write('raw timestamp %r\n' % (cs.date,)) if cs.branchpoints: ui.write(('Branchpoints: %s \n') % ', '.join(sorted(cs.branchpoints)))
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     1
bundle w/o type option
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     3
  $ hg init t1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     4
  $ hg init t2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     5
  $ cd t1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     6
  $ echo blablablablabla > file.txt
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     7
  $ hg ci -Ama
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     8
  adding file.txt
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
     9
  $ hg log | grep summary
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    10
  summary:     a
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    11
  $ hg bundle ../b1 ../t2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    12
  searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    13
  1 changesets found
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
    14
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    15
  $ cd ../t2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    16
  $ hg pull ../b1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    17
  pulling from ../b1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    18
  requesting all changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    19
  adding changesets
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    20
  adding manifests
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    21
  adding file changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    22
  added 1 changesets with 1 changes to 1 files
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    23
  (run 'hg update' to get a working copy)
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    24
  $ hg up
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    25
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    26
  $ hg log | grep summary
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    27
  summary:     a
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    28
  $ cd ..
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
    29
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    30
test bundle types
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
    31
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    32
  $ for t in "None" "bzip2" "gzip"; do
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    33
  >   echo % test bundle type $t
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    34
  >   hg init t$t
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    35
  >   cd t1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    36
  >   hg bundle -t $t ../b$t ../t$t
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    37
  >   cut -b 1-6 ../b$t | head -n 1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    38
  >   cd ../t$t
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    39
  >   hg pull ../b$t
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    40
  >   hg up
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    41
  >   hg log | grep summary
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    42
  >   cd ..
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    43
  > done
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    44
  % test bundle type None
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    45
  searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    46
  1 changesets found
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    47
  HG10UN
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    48
  pulling from ../bNone
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    49
  requesting all changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    50
  adding changesets
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    51
  adding manifests
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    52
  adding file changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    53
  added 1 changesets with 1 changes to 1 files
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    54
  (run 'hg update' to get a working copy)
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    55
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    56
  summary:     a
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    57
  % test bundle type bzip2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    58
  searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    59
  1 changesets found
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    60
  HG10BZ
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    61
  pulling from ../bbzip2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    62
  requesting all changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    63
  adding changesets
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    64
  adding manifests
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    65
  adding file changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    66
  added 1 changesets with 1 changes to 1 files
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    67
  (run 'hg update' to get a working copy)
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    68
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    69
  summary:     a
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    70
  % test bundle type gzip
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    71
  searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    72
  1 changesets found
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    73
  HG10GZ
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    74
  pulling from ../bgzip
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    75
  requesting all changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    76
  adding changesets
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    77
  adding manifests
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    78
  adding file changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    79
  added 1 changesets with 1 changes to 1 files
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    80
  (run 'hg update' to get a working copy)
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    81
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    82
  summary:     a
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
    83
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    84
test garbage file
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
    85
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    86
  $ echo garbage > bgarbage
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    87
  $ hg init tgarbage
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    88
  $ cd tgarbage
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    89
  $ hg pull ../bgarbage
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16427
diff changeset
    90
  pulling from ../bgarbage
12044
bcc7139521b7 bundlerepo: remove duplication of bundle decompressors
Matt Mackall <mpm@selenic.com>
parents: 11872
diff changeset
    91
  abort: ../bgarbage: not a Mercurial bundle
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12044
diff changeset
    92
  [255]
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    93
  $ cd ..
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    94
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    95
test invalid bundle type
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    96
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    97
  $ cd t1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    98
  $ hg bundle -a -t garbage ../bgarbage
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
    99
  abort: unknown bundle type specified with --type
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12044
diff changeset
   100
  [255]
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
   101
  $ cd ..