#!/usr/bin/env python2.4
from basetest import BaseTest
import sys, tempfile, os, shutil
from StringIO import StringIO
import unittest
sys.path.insert(0, '..')
from zeroinstall.injector import qdom
def parseString(s):
return qdom.parse(StringIO(s))
class TestQDom(BaseTest):
def testSimple(self):
root = parseString('')
assert root.name == 'root'
assert root.uri == None
assert root.content == ''
def testText(self):
root = parseString(' Hi ')
assert root.name == 'root'
assert root.uri == None
assert root.content == 'Hi'
assert root.childNodes == []
def testNS(self):
root = parseString('' +
'')
assert root.name == 'root'
assert root.uri == 'http://myns.com/foo'
assert root.content == ''
assert root.childNodes == []
def testAttrs(self):
root = parseString('' +
'')
assert root.name == 'root'
assert root.uri == None
assert root.content == ''
assert root.childNodes == []
assert root.attrs.get('http://myns.com/foo foo') == 'bar'
assert root.attrs.get('bar') == 'baz'
def testNested(self):
root = parseString('' +
'Bob3')
assert root.name == 'root'
assert root.uri == None
assert root.content == ''
assert len(root.childNodes) == 2
assert root.childNodes[0].name == 'name'
assert root.childNodes[0].uri == None
assert root.childNodes[0].content == 'Bob'
assert root.childNodes[0].childNodes == []
assert root.childNodes[1].name == 'age'
assert root.childNodes[1].uri == None
assert root.childNodes[1].content == '3'
assert root.childNodes[1].childNodes == []
def testStr(self):
root = parseString('' +
'hi')
assert 'root' in str(root)
suite = unittest.makeSuite(TestQDom)
if __name__ == '__main__':
sys.argv.append('-v')
unittest.main()