tests/seq.py
author Pierre-Yves David <pierre-yves.david@octobus.net>
Fri, 06 Mar 2020 23:27:28 +0100
branchstable
changeset 44450 7d5455b988ec
parent 43076 2372284d9457
child 45830 c102b704edb5
permissions -rwxr-xr-x
discovery: avoid wrong detection of multiple branch heads (issue6256) This fix the code using obsolescence markers to remove "to be obsoleted" heads during the detection of new head creation from push. The code turned out to not use the branch information at all. This lead changeset from different branch to be detected as new head on unrelated branch. The code fix is actually quite simple. New tests have been added to covers these cases. Differential Revision: https://phab.mercurial-scm.org/D8259
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24360
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     1
#!/usr/bin/env python
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     2
#
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     3
# A portable replacement for 'seq'
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     4
#
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     5
# Usage:
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     6
#   seq STOP              [1, STOP] stepping by 1
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     7
#   seq START STOP        [START, STOP] stepping by 1
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     8
#   seq START STEP STOP   [START, STOP] stepping by STEP
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     9
28722
2cd8c3b0bd11 py3: use print_function in seq.py
Robert Stanca <robert.stanca7@gmail.com>
parents: 28721
diff changeset
    10
from __future__ import absolute_import, print_function
40773
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    11
import os
24360
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    12
import sys
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    13
40773
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    14
try:
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    15
    import msvcrt
43076
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 40773
diff changeset
    16
40773
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    17
    msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY)
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    18
    msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    19
    msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY)
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    20
except ImportError:
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    21
    pass
0605726179a0 tests: apply binary mode to output in seq.py
Matt Harbison <matt_harbison@yahoo.com>
parents: 35150
diff changeset
    22
35150
08b8b56bd2e8 py3: alias xrange to range in tests/seq.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 28722
diff changeset
    23
if sys.version_info[0] >= 3:
08b8b56bd2e8 py3: alias xrange to range in tests/seq.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 28722
diff changeset
    24
    xrange = range
08b8b56bd2e8 py3: alias xrange to range in tests/seq.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 28722
diff changeset
    25
24360
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    26
start = 1
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    27
if len(sys.argv) > 2:
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    28
    start = int(sys.argv[1])
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    29
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    30
step = 1
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    31
if len(sys.argv) > 3:
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    32
    step = int(sys.argv[2])
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    33
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    34
stop = int(sys.argv[-1]) + 1
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    35
f554f89a2038 tests: introduce 'seq.py' as a portable replacement for 'seq'
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    36
for i in xrange(start, stop, step):
28722
2cd8c3b0bd11 py3: use print_function in seq.py
Robert Stanca <robert.stanca7@gmail.com>
parents: 28721
diff changeset
    37
    print(i)