Changeset 81:643c4f0e849d

Show
Ignore:
Timestamp:
11/13/08 09:17:47 (21 months ago)
Author:
Nicolas ?vrard <nicoe@…>
Branch:
default
Message:

Ensure that RelatorioStream? returns str objects

Location:
relatorio
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • relatorio/templates/base.py

    r78 r81  
    2121__metaclass__ = type 
    2222 
     23from cStringIO import OutputType 
     24 
    2325import genshi.core 
    2426from genshi.template import NewTextTemplate, MarkupTemplate 
     
    4244        return RelatorioStream(self.events | function, self.serializer) 
    4345 
     46    def __str__(self): 
     47        val = self.render() 
     48        if isinstance(val, OutputType): 
     49            return val.getvalue() 
     50        else: 
     51            return val 
     52 
    4453MIMETemplateLoader.add_factory('text', NewTextTemplate) 
    4554MIMETemplateLoader.add_factory('xml', MarkupTemplate) 
  • relatorio/tests/test_odt.py

    r80 r81  
    157157        eq_(group, ('formatLang("en")', None, None, None, None, None)) 
    158158 
     159    def test_str(self): 
     160        "Testing that a RelatorioStream str returns a bitstream" 
     161        stream = str(self.oot.generate(**self.data)) 
     162        ok_(isinstance(stream, str))