Armin Ronacher | ccf284b | 2007-05-21 16:44:26 +0200 | [diff] [blame] | 1 | # -*- coding: utf-8 -*- |
| 2 | """ |
| 3 | unit test for streaming interface |
| 4 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 5 | |
| 6 | :copyright: 2007 by Armin Ronacher. |
| 7 | :license: BSD, see LICENSE for more details. |
| 8 | """ |
| 9 | |
| 10 | |
| 11 | test_basic_streaming = r""" |
| 12 | >>> tmpl = env.from_string("<ul>{% for item in seq %}<li>{{ loop.index " |
| 13 | ... "}} - {{ item }}</li>{%- endfor %}</ul>") |
| 14 | >>> stream = tmpl.stream(seq=range(4)) |
| 15 | >>> stream.next() |
| 16 | u'<ul>' |
| 17 | >>> stream.next() |
| 18 | u'<li>1 - 0</li>' |
| 19 | >>> stream.next() |
| 20 | u'<li>2 - 1</li>' |
| 21 | >>> stream.next() |
| 22 | u'<li>3 - 2</li>' |
| 23 | >>> stream.next() |
| 24 | u'<li>4 - 3</li>' |
| 25 | >>> stream.next() |
| 26 | u'</ul>' |
| 27 | """ |
| 28 | |
| 29 | test_buffered_streaming = r""" |
| 30 | >>> tmpl = env.from_string("<ul>{% for item in seq %}<li>{{ loop.index " |
| 31 | ... "}} - {{ item }}</li>{%- endfor %}</ul>") |
| 32 | >>> stream = tmpl.stream(seq=range(4)) |
| 33 | >>> stream.enable_buffering(size=3) |
| 34 | >>> stream.next() |
| 35 | u'<ul><li>1 - 0</li><li>2 - 1</li>' |
| 36 | >>> stream.next() |
| 37 | u'<li>3 - 2</li><li>4 - 3</li></ul>' |
| 38 | """ |
| 39 | |
| 40 | test_streaming_behavior = r""" |
| 41 | >>> tmpl = env.from_string("") |
| 42 | >>> stream = tmpl.stream() |
| 43 | >>> stream.buffered |
| 44 | False |
| 45 | >>> stream.enable_buffering(20) |
| 46 | >>> stream.buffered |
| 47 | True |
| 48 | >>> stream.disable_buffering() |
| 49 | >>> stream.buffered |
| 50 | False |
| 51 | """ |