""" @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