110 |
110 |
|
111 |
111 |
|
112 |
112 |
def test_datetime_templatetags():
|
|
113 |
tmpl = Template('{{ plop|datetime }}')
|
|
114 |
assert tmpl.render({'plop': '2017-12-21 10:32'}) == 'Dec. 21, 2017, 10:32 a.m.'
|
|
115 |
assert tmpl.render({'plop': '21/12/2017 10h32'}) == 'Dec. 21, 2017, 10:32 a.m.'
|
|
116 |
assert tmpl.render({'plop': '2017-12-21'}) == 'Dec. 21, 2017, midnight'
|
|
117 |
assert tmpl.render({'plop': '21/12/2017'}) == 'Dec. 21, 2017, midnight'
|
|
118 |
assert tmpl.render({'plop': '10h32'}) == ''
|
|
119 |
assert tmpl.render({'plop': 'x'}) == ''
|
|
120 |
assert tmpl.render({'plop': None}) == ''
|
|
121 |
assert tmpl.render({'plop': 3}) == ''
|
|
122 |
assert tmpl.render({'plop': {'foo': 'bar'}}) == ''
|
|
123 |
assert tmpl.render() == ''
|
|
124 |
|
|
125 |
tmpl = Template('{{ plop|datetime:"d i" }}')
|
|
126 |
assert tmpl.render({'plop': '2017-12-21 10:32'}) == '21 32'
|
|
127 |
assert tmpl.render({'plop': '2017-12-21 10:32:42'}) == '21 32'
|
|
128 |
assert tmpl.render({'plop': '21/12/2017 10:32'}) == '21 32'
|
|
129 |
assert tmpl.render({'plop': '21/12/2017 10:32:42'}) == '21 32'
|
|
130 |
assert tmpl.render({'plop': '21/12/2017 10h32'}) == '21 32'
|
|
131 |
assert tmpl.render({'plop': '21/12/2017'}) == '21 00'
|
|
132 |
assert tmpl.render({'plop': '10h32'}) == ''
|
|
133 |
assert tmpl.render({'plop': 'x'}) == ''
|
|
134 |
assert tmpl.render({'plop': None}) == ''
|
|
135 |
assert tmpl.render({'plop': 3}) == ''
|
|
136 |
assert tmpl.render({'plop': {'foo': 'bar'}}) == ''
|
|
137 |
assert tmpl.render() == ''
|
|
138 |
|
|
139 |
tmpl = Template('{% if d1|datetime > d2|datetime %}d1>d2{% else %}d1<=d2{% endif %}')
|
|
140 |
assert tmpl.render({'d1': '2017-12-22', 'd2': '2017-12-21'}) == 'd1>d2'
|
|
141 |
assert tmpl.render({'d1': '2017-12-21', 'd2': '2017-12-21'}) == 'd1<=d2'
|
|
142 |
assert tmpl.render({'d1': '2017-12-21 10:30', 'd2': '2017-12-21 09:00'}) == 'd1>d2'
|
|
143 |
assert tmpl.render({'d1': '2017-12-21 10:30', 'd2': '2017-12-21'}) == 'd1>d2'
|
|
144 |
assert tmpl.render({'d1': '2017-12-22'}) == 'd1<=d2'
|
|
145 |
assert tmpl.render({'d2': '2017-12-22'}) == 'd1<=d2'
|
|
146 |
|
|
147 |
tmpl = Template('{{ plop|date }}')
|
|
148 |
assert tmpl.render({'plop': '2017-12-21'}) == 'Dec. 21, 2017'
|
|
149 |
assert tmpl.render({'plop': '21/12/2017'}) == 'Dec. 21, 2017'
|
|
150 |
assert tmpl.render({'plop': '2017-12-21 10:32'}) == 'Dec. 21, 2017'
|
|
151 |
assert tmpl.render({'plop': '21/12/2017 10:32'}) == 'Dec. 21, 2017'
|
|
152 |
assert tmpl.render({'plop': '21/12/2017 10h32'}) == 'Dec. 21, 2017'
|
|
153 |
assert tmpl.render({'plop': '21/12/2017 10:32:42'}) == 'Dec. 21, 2017'
|
|
154 |
assert tmpl.render({'plop': '10:32'}) == ''
|
|
155 |
assert tmpl.render({'plop': 'x'}) == ''
|
|
156 |
assert tmpl.render({'plop': None}) == ''
|
|
157 |
assert tmpl.render({'plop': 3}) == ''
|
|
158 |
assert tmpl.render({'plop': {'foo': 'bar'}}) == ''
|
|
159 |
assert tmpl.render() == ''
|
|
160 |
|
|
161 |
tmpl = Template('{{ plop|date:"d" }}')
|
|
162 |
assert tmpl.render({'plop': '2017-12-21'}) == '21'
|
|
163 |
assert tmpl.render({'plop': '21/12/2017'}) == '21'
|
|
164 |
assert tmpl.render({'plop': '2017-12-21 10:32'}) == '21'
|
|
165 |
assert tmpl.render({'plop': '10:32'}) == ''
|
|
166 |
assert tmpl.render({'plop': 'x'}) == ''
|
|
167 |
assert tmpl.render({'plop': None}) == ''
|
|
168 |
assert tmpl.render({'plop': 3}) == ''
|
|
169 |
assert tmpl.render({'plop': {'foo': 'bar'}}) == ''
|
|
170 |
assert tmpl.render() == ''
|
|
171 |
|
|
172 |
tmpl = Template('{% if d1|date > d2|date %}d1>d2{% else %}d1<=d2{% endif %}')
|
|
173 |
assert tmpl.render({'d1': '2017-12-22', 'd2': '2017-12-21'}) == 'd1>d2'
|
|
174 |
assert tmpl.render({'d1': '2017-12-21', 'd2': '2017-12-21'}) == 'd1<=d2'
|
|
175 |
assert tmpl.render({'d1': '2017-12-22'}) == 'd1<=d2'
|
|
176 |
assert tmpl.render({'d2': '2017-12-22'}) == 'd1<=d2'
|
|
177 |
|
|
178 |
tmpl = Template('{{ plop|time }}')
|
|
179 |
assert tmpl.render({'plop': '10:32'}) == '10:32 a.m.'
|
|
180 |
assert tmpl.render({'plop': '2017-12-21 10:32'}) == '10:32 a.m.'
|
|
181 |
assert tmpl.render({'plop': '21/12/2017 10h32'}) == '10:32 a.m.'
|
|
182 |
assert tmpl.render({'plop': '21/12/2017'}) == 'midnight'
|
|
183 |
assert tmpl.render({'plop': 'x'}) == ''
|
|
184 |
assert tmpl.render({'plop': None}) == ''
|
|
185 |
assert tmpl.render({'plop': 3}) == ''
|
|
186 |
assert tmpl.render({'plop': {'foo': 'bar'}}) == ''
|
|
187 |
assert tmpl.render() == ''
|
|
188 |
|
|
189 |
tmpl = Template('{{ plop|time:"H i" }}')
|
|
190 |
assert tmpl.render({'plop': '10:32'}) == '10 32'
|
|
191 |
assert tmpl.render({'plop': '2017-12-21 10:32'}) == '10 32'
|
|
192 |
assert tmpl.render({'plop': '21/12/2017 10h32'}) == '10 32'
|
|
193 |
assert tmpl.render({'plop': '21/12/2017'}) == '00 00'
|
|
194 |
assert tmpl.render({'plop': 'x'}) == ''
|
|
195 |
assert tmpl.render({'plop': None}) == ''
|
|
196 |
assert tmpl.render({'plop': 3}) == ''
|
|
197 |
assert tmpl.render({'plop': {'foo': 'bar'}}) == ''
|
|
198 |
assert tmpl.render() == ''
|
|
199 |
|
|
200 |
# old fashion, with parse_*
|
113 |
201 |
tmpl = Template('{{ plop|parse_datetime|date:"d i" }}')
|
114 |
202 |
assert tmpl.render({'plop': '2017-12-21 10:32'}) == '21 32'
|
115 |
203 |
assert tmpl.render({'plop': '2017-12-21 10:32:42'}) == '21 32'
|
... | ... | |
152 |
240 |
assert tmpl.render({'plop': 12345.678}) == '12345.678'
|
153 |
241 |
assert tmpl.render({'plop': None}) == ''
|
154 |
242 |
|
|
243 |
tmpl = Template('{{ plop|decimal:3 }}')
|
|
244 |
assert tmpl.render({'plop': '3.14'}) == '3.140'
|
|
245 |
assert tmpl.render({'plop': None}) == ''
|
|
246 |
tmpl = Template('{{ plop|decimal:"3" }}')
|
|
247 |
assert tmpl.render({'plop': '3.14'}) == '3.140'
|
|
248 |
assert tmpl.render({'plop': None}) == ''
|
|
249 |
|
155 |
250 |
tmpl = Template('{% if plop|decimal > 2 %}hello{% endif %}')
|
156 |
251 |
assert tmpl.render({'plop': 3}) == 'hello'
|
|
252 |
assert tmpl.render({'plop': '3'}) == 'hello'
|
|
253 |
assert tmpl.render({'plop': 2.001}) == 'hello'
|
|
254 |
assert tmpl.render({'plop': '2.001'}) == 'hello'
|
157 |
255 |
assert tmpl.render({'plop': 1}) == ''
|
|
256 |
assert tmpl.render({'plop': 1.99}) == ''
|
|
257 |
assert tmpl.render({'plop': '1.99'}) == ''
|
|
258 |
assert tmpl.render({'plop': 'x'}) == 'hello'
|
158 |
259 |
assert tmpl.render({'plop': None}) == 'hello' # will be str > int, always True.
|