Mercurial > hg
view tests/ls-l.py @ 44255:541a509a47a8 stable
heptapod-ci: add a job to test the rust version of Mercurial
The rust version of Mercurial is not currently tested by anything else. So it
get quite important that developer runs it.
Differential Revision: https://phab.mercurial-scm.org/D8017
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 17 Nov 2019 01:18:14 +0100 |
parents | 2372284d9457 |
children | c102b704edb5 |
line wrap: on
line source
#!/usr/bin/env python # like ls -l, but do not print date, user, or non-common mode bit, to avoid # using globs in tests. from __future__ import absolute_import, print_function import os import stat import sys def modestr(st): mode = st.st_mode result = '' if mode & stat.S_IFDIR: result += 'd' else: result += '-' for owner in ['USR', 'GRP', 'OTH']: for action in ['R', 'W', 'X']: if mode & getattr(stat, 'S_I%s%s' % (action, owner)): result += action.lower() else: result += '-' return result def sizestr(st): if st.st_mode & stat.S_IFREG: return '%7d' % st.st_size else: # do not show size for non regular files return ' ' * 7 os.chdir((sys.argv[1:] + ['.'])[0]) for name in sorted(os.listdir('.')): st = os.stat(name) print('%s %s %s' % (modestr(st), sizestr(st), name))