tests/test-check-code-hg.py
author Adrian Buehlmann <adrian@cadifra.com>
Thu, 02 Jun 2011 00:33:33 +0200
changeset 14518 a67e866f46f9
parent 11771 b0e3d3973440
permissions -rw-r--r--
workingctx: eliminate remove function Inlining it into it's last remaining call place in cmdutil.copy. Note that cmdutil.copy is called with the wlock already held, so no additional locking is needed to call util.unlinkpath. We do not need to wrap the util.unlinkpath call into a try block, because at that point we already know whether abssrc exists or not -- thanks to the preceding util.copyfile call. Adding a new local 'srcexists' in cmdutil.copy for that purpose.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11762
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     1
# Pass all working directory files through check-code.py
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     2
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     3
import sys, os, imp
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     4
rootdir = os.path.abspath(os.path.join(os.path.dirname(sys.argv[0]), '..'))
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     5
if not os.path.isdir(os.path.join(rootdir, '.hg')):
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     6
    sys.stderr.write('skipped: cannot check code on non-repository sources\n')
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     7
    sys.exit(80)
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     8
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     9
checkpath = os.path.join(rootdir, 'contrib/check-code.py')
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    10
checkcode = imp.load_source('checkcode', checkpath)
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    11
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    12
from mercurial import hg, ui
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    13
u = ui.ui()
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    14
repo = hg.repository(u, rootdir)
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    15
checked = 0
11771
b0e3d3973440 tests: only run check-code on tracked files
Matt Mackall <mpm@selenic.com>
parents: 11762
diff changeset
    16
wctx = repo[None]
b0e3d3973440 tests: only run check-code on tracked files
Matt Mackall <mpm@selenic.com>
parents: 11762
diff changeset
    17
for f in wctx:
b0e3d3973440 tests: only run check-code on tracked files
Matt Mackall <mpm@selenic.com>
parents: 11762
diff changeset
    18
    # ignore removed and unknown files
b0e3d3973440 tests: only run check-code on tracked files
Matt Mackall <mpm@selenic.com>
parents: 11762
diff changeset
    19
    if f not in wctx:
b0e3d3973440 tests: only run check-code on tracked files
Matt Mackall <mpm@selenic.com>
parents: 11762
diff changeset
    20
        continue
11762
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    21
    checked += 1
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    22
    checkcode.checkfile(os.path.join(rootdir, f))
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    23
if not checked:
8b03c988efb3 tests: run check-code.py on working directory files
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    24
    sys.stderr.write('no file checked!\n')