blob: 709105ba986f01f03ce00a29219ec5d7fa801082 [file] [log] [blame]
Armin Ronacherccf284b2007-05-21 16:44:26 +02001# -*- 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
11test_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()
16u'<ul>'
17>>> stream.next()
18u'<li>1 - 0</li>'
19>>> stream.next()
20u'<li>2 - 1</li>'
21>>> stream.next()
22u'<li>3 - 2</li>'
23>>> stream.next()
24u'<li>4 - 3</li>'
25>>> stream.next()
26u'</ul>'
27"""
28
29test_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()
35u'<ul><li>1 - 0</li><li>2 - 1</li>'
36>>> stream.next()
37u'<li>3 - 2</li><li>4 - 3</li></ul>'
38"""
39
40test_streaming_behavior = r"""
41>>> tmpl = env.from_string("")
42>>> stream = tmpl.stream()
43>>> stream.buffered
44False
45>>> stream.enable_buffering(20)
46>>> stream.buffered
47True
48>>> stream.disable_buffering()
49>>> stream.buffered
50False
51"""