tests: handle string escaping/encoding on Python 3
This code was failing on Python 3 for a few reasons:
1) sys.argv is str and str doesn't have a .decode()
2) the "string_escape" encoding was renamed to "unicode_escape"
It is wonky casting to bytes to str to bytes. But this is test
code, so meh. I don't believe we exercise any code paths in these
tests where the arguments aren't ascii.
Differential Revision: https://phab.mercurial-scm.org/D5667
# mock out util.makedate() to supply testable values
from __future__ import absolute_import
import os
from mercurial import pycompat
from mercurial.utils import dateutil
def mockmakedate():
filename = os.path.join(os.environ['TESTTMP'], 'testtime')
try:
with open(filename, 'rb') as timef:
time = float(timef.read()) + 1
except IOError:
time = 0.0
with open(filename, 'wb') as timef:
timef.write(pycompat.bytestr(time))
return (time, 0)
dateutil.makedate = mockmakedate