Mercurial > piecrust2
comparison tests/mockutil.py @ 36:485682a6de50
New site layout support.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Wed, 20 Aug 2014 23:16:51 -0700 |
parents | e4c345dcf33c |
children | 3471ffa059b2 |
comparison
equal
deleted
inserted
replaced
35:e4c345dcf33c | 36:485682a6de50 |
---|---|
35 def __init__(self, default_spec=True): | 35 def __init__(self, default_spec=True): |
36 self._root = 'root_%d' % random.randrange(1000) | 36 self._root = 'root_%d' % random.randrange(1000) |
37 self._fs = {self._root: {}} | 37 self._fs = {self._root: {}} |
38 if default_spec: | 38 if default_spec: |
39 self.withDir('counter') | 39 self.withDir('counter') |
40 self.withFile('kitchen/_content/config.yml', | 40 self.withFile('kitchen/config.yml', |
41 "site:\n title: Mock Website\n") | 41 "site:\n title: Mock Website\n") |
42 | 42 |
43 def path(self, p): | 43 def path(self, p): |
44 p = p.replace('\\', '/') | 44 p = p.replace('\\', '/') |
45 if p in ['/', '', None]: | 45 if p in ['/', '', None]: |
70 def withAssetDir(self, path): | 70 def withAssetDir(self, path): |
71 return self.withDir('kitchen/' + path) | 71 return self.withDir('kitchen/' + path) |
72 | 72 |
73 def withConfig(self, config): | 73 def withConfig(self, config): |
74 return self.withFile( | 74 return self.withFile( |
75 'kitchen/_content/config.yml', | 75 'kitchen/config.yml', |
76 yaml.dump(config)) | 76 yaml.dump(config)) |
77 | 77 |
78 def withThemeConfig(self, config): | 78 def withThemeConfig(self, config): |
79 return self.withFile( | 79 return self.withFile( |
80 'kitchen/_content/theme/_content/theme_config.yml', | 80 'kitchen/theme/theme_config.yml', |
81 yaml.dump(config)) | 81 yaml.dump(config)) |
82 | 82 |
83 def withPage(self, url, config=None, contents=None): | 83 def withPage(self, url, config=None, contents=None): |
84 config = config or {} | 84 config = config or {} |
85 contents = contents or "A test page." | 85 contents = contents or "A test page." |
90 | 90 |
91 name, ext = os.path.splitext(url) | 91 name, ext = os.path.splitext(url) |
92 if not ext: | 92 if not ext: |
93 url += '.md' | 93 url += '.md' |
94 url = url.lstrip('/') | 94 url = url.lstrip('/') |
95 return self.withAsset('_content/' + url, text) | 95 return self.withAsset(url, text) |
96 | 96 |
97 def withPageAsset(self, page_url, name, contents=None): | 97 def withPageAsset(self, page_url, name, contents=None): |
98 contents = contents or "A test asset." | 98 contents = contents or "A test asset." |
99 url_base, ext = os.path.splitext(page_url) | 99 url_base, ext = os.path.splitext(page_url) |
100 dirname = url_base + '-assets' | 100 dirname = url_base + '-assets' |
101 return self.withAsset('_content/%s/%s' % (dirname, name), | 101 return self.withAsset('%s/%s' % (dirname, name), |
102 contents) | 102 contents) |
103 | 103 |
104 def getStructure(self, path=None): | 104 def getStructure(self, path=None): |
105 root = self._fs[self._root] | 105 root = self._fs[self._root] |
106 if path: | 106 if path: |