tests/readlink.py
author Stanislau Hlebik <stash@fb.com>
Thu, 02 Feb 2017 02:56:38 -0800
changeset 30907 1791be8a95c5
parent 29485 6a98f9408a50
child 45849 c102b704edb5
permissions -rwxr-xr-x
localrepo: avoid unnecessary conversion from node to rev changelog.heads() first calls headrevs then converts them to nodes. localrepo.heads() then sorts them using self.changelog.rev function and makes useless conversion back to revs. Instead let's call changelog.headrevs() from localrepo.heads(), sort the output and then convert to nodes. Because headrevs does not support start parameter this optimization only works if start is None.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5683
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
     1
#!/usr/bin/env python
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
     2
29485
6a98f9408a50 py3: make files use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 29175
diff changeset
     3
from __future__ import absolute_import, print_function
29175
7bcfb9090c86 readlink: use print_function
timeless <timeless@mozdev.org>
parents: 25660
diff changeset
     4
29485
6a98f9408a50 py3: make files use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 29175
diff changeset
     5
import errno
6a98f9408a50 py3: make files use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 29175
diff changeset
     6
import os
6a98f9408a50 py3: make files use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents: 29175
diff changeset
     7
import sys
5683
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
     8
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
     9
for f in sys.argv[1:]:
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
    10
    try:
29175
7bcfb9090c86 readlink: use print_function
timeless <timeless@mozdev.org>
parents: 25660
diff changeset
    11
        print(f, '->', os.readlink(f))
25660
328739ea70c3 global: mass rewrite to use modern exception syntax
Gregory Szorc <gregory.szorc@gmail.com>
parents: 10282
diff changeset
    12
    except OSError as err:
10282
08a0f04b56bd many, many trivial check-code fixups
Matt Mackall <mpm@selenic.com>
parents: 5683
diff changeset
    13
        if err.errno != errno.EINVAL:
08a0f04b56bd many, many trivial check-code fixups
Matt Mackall <mpm@selenic.com>
parents: 5683
diff changeset
    14
            raise
29175
7bcfb9090c86 readlink: use print_function
timeless <timeless@mozdev.org>
parents: 25660
diff changeset
    15
        print(f, '->', f, 'not a symlink')
5683
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
    16
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
    17
sys.exit(0)