Files
Hippolyzer/pyogp/lib/base/message/tests/test_llsd_builder.py

85 lines
2.5 KiB
Python

"""
@file test_llsd_builder.py
@date 2008-09-16
Contributors can be viewed at:
http://svn.secondlife.com/svn/linden/projects/2008/pyogp/CONTRIBUTORS.txt
$LicenseInfo:firstyear=2008&license=apachev2$
Copyright 2008, Linden Research, Inc.
Licensed under the Apache License, Version 2.0 (the "License").
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
or in
http://svn.secondlife.com/svn/linden/projects/2008/pyogp/LICENSE.txt
$/LicenseInfo$
"""
#standard libraries
import unittest, doctest
#third party
from indra.base import llsd
#local libraries
from pyogp.lib.base.message.llsd_builder import LLSDMessageBuilder
from pyogp.lib.base.message.types import MsgType
class TestLLSDBuilder(unittest.TestCase):
def tearDown(self):
pass
def setUp(self):
pass
def test_builder(self):
builder = LLSDMessageBuilder()
builder.new_message('TestMessage')
builder.next_block('TestBlock1')
builder.add_data('Test1', 0x00000001, MsgType.MVT_U32)
builder.next_block('TestBlock1')
builder.add_data('Test2', 0x00000001, MsgType.MVT_U32)
builder.next_block('NeighborBlock')
builder.add_data('Test0', 0x00000001, MsgType.MVT_U32)
builder.add_data('Test1', 0x00000001, MsgType.MVT_U32)
builder.add_data('Test2', 0x00000001, MsgType.MVT_U32)
builder.next_block('NeighborBlock')
builder.add_data('Test1', 0x00000001, MsgType.MVT_U32)
builder.add_data('Test1', 0x00000001, MsgType.MVT_U32)
builder.add_data('Test1', 0x00000001, MsgType.MVT_U32)
builder.next_block('NeighborBlock')
builder.add_data('Test2', 0x00000001, MsgType.MVT_U32)
builder.add_data('Test2', 0x00000001, MsgType.MVT_U32)
builder.add_data('Test2', 0x00000001, MsgType.MVT_U32)
builder.next_block('TestBlock2')
builder.add_data('Test1', 0x00000001, MsgType.MVT_U32)
msg, size = builder.build_message()
try:
assert len(msg['NeighborBlock']) == 3, "Multiple blocks not" + \
" correct"
except:
assert False, "Message not set up properly"
try:
msg = llsd.format_xml(msg)
except:
assert False, "Message not built correctly so it can be formatted"
def test_suite():
from unittest import TestSuite, makeSuite
suite = TestSuite()
suite.addTest(makeSuite(TestLLSDBuilder))
return suite