tests/svn-safe-append.py
author Augie Fackler <augie@google.com>
Tue, 17 Mar 2020 17:21:34 -0400
changeset 44569 5483e9c759e4
parent 39724 e1e10cbb5568
child 45830 c102b704edb5
permissions -rwxr-xr-x
tests: add test for remotefilelog interactions with hgweb It's not uncommon for hg users to rely on hgweb as a simple GUI and history browser (I do this all the time on Mercurial), but we lack any tests to ensure things keep working. At present, this merely demonstrates the "view contents of a single file" endpoint is broken. I'll fix that in a subsequent change. Differential Revision: https://phab.mercurial-scm.org/D8298

#!/usr/bin/env python

from __future__ import absolute_import

__doc__ = """Same as `echo a >> b`, but ensures a changed mtime of b.
Without this svn will not detect workspace changes."""

import os
import stat
import sys

if sys.version_info[0] >= 3:
    text = os.fsencode(sys.argv[1])
    fname = os.fsencode(sys.argv[2])
else:
    text = sys.argv[1]
    fname = sys.argv[2]

f = open(fname, "ab")
try:
    before = os.fstat(f.fileno())[stat.ST_MTIME]
    f.write(text)
    f.write(b"\n")
finally:
    f.close()
inc = 1
now = os.stat(fname)[stat.ST_MTIME]
while now == before:
    t = now + inc
    inc += 1
    os.utime(fname, (t, t))
    now = os.stat(fname)[stat.ST_MTIME]