#! /usr/bin/env python """ :Author: David Goodger :Contact: goodger@users.sourceforge.net :Revision: $Revision$ :Date: $Date$ :Copyright: This module has been placed in the public domain. Test module for nodes.py. """ import unittest from DocutilsTestSupport import nodes debug = 0 class TextTests(unittest.TestCase): def setUp(self): self.text = nodes.Text('Line 1.\nLine 2.') def test_repr(self): self.assertEquals(repr(self.text), r"<#text: 'Line 1.\nLine 2.'>") def test_str(self): self.assertEquals(str(self.text), 'Line 1.\nLine 2.') def test_asdom(self): dom = self.text.asdom() self.assertEquals(dom.toxml(), 'Line 1.\nLine 2.') dom.unlink() def test_astext(self): self.assertEquals(self.text.astext(), 'Line 1.\nLine 2.') def test_pformat(self): self.assertEquals(self.text.pformat(), 'Line 1.\nLine 2.\n') class ElementTests(unittest.TestCase): def test_empty(self): element = nodes.Element() self.assertEquals(repr(element), '') self.assertEquals(str(element), '') dom = element.asdom() self.assertEquals(dom.toxml(), '') dom.unlink() element['attr'] = '1' self.assertEquals(repr(element), '') self.assertEquals(str(element), '') dom = element.asdom() self.assertEquals(dom.toxml(), '') dom.unlink() self.assertEquals(element.pformat(), '\n') def test_withtext(self): element = nodes.Element('text\nmore', nodes.Text('text\nmore')) self.assertEquals(repr(element), r">") self.assertEquals(str(element), 'text\nmore') dom = element.asdom() self.assertEquals(dom.toxml(), 'text\nmore') dom.unlink() element['attr'] = '1' self.assertEquals(repr(element), r">") self.assertEquals(str(element), 'text\nmore') dom = element.asdom() self.assertEquals(dom.toxml(), 'text\nmore') dom.unlink() self.assertEquals(element.pformat(), """\ text more """) if __name__ == '__main__': unittest.main()