copier/tests/helpers.py
2013-06-30 13:00:15 -05:00

38 lines
814 B
Python

# -*- coding: utf-8 -*-
from hashlib import sha1
from os import urandom
from os.path import join, dirname
import filecmp
import io
import voodoo
SKELETON_PATH = join(dirname(__file__), 'demo')
def render(dst, **kwargs):
data = {
'package': 'demo',
'py3': True,
'make_secret': lambda: sha1(urandom(48)).hexdigest()
}
kwargs.setdefault('quiet', True)
voodoo.render_skeleton(SKELETON_PATH, dst, data=data, **kwargs)
def read_content(path):
with io.open(path, mode='rt', encoding='utf8') as f:
return f.read()
def write_content(path, content):
with io.open(path, mode='wt', encoding='utf8') as f:
return f.write(content)
def assert_file(dst, *path):
p1 = join(dst, *path)
p2 = join(SKELETON_PATH, *path)
assert filecmp.cmp(p1, p2)