def test_loader():
    """
    Basic Loader test, by it's lonesome, so that Loader can be assumed
    to be valid in other invidual tests (without needing to reload
    each time).
    """
    loader = Loader("MultihopOscilloscope_app.xml", None)
class DummyProber(object):
    # PST- Gross hack to make up imaginary test buffer. For better or
    # worse (I tend to think the latter), python 2.5 does not have a
    # pure python way of creating real immutable buffers.
    def get_buffer(self, node, var):
        return " " * 4096

    def get_shadow_buffer(self, node, var, length):
        return " " * length

    def get_dirty_list(self, lst):
        return []


loader = Loader("MultihopOscilloscope_app.xml", DummyProber())


def looks_like_oscilloscope_t(probe):
    items = ["version", "interval", "id", "count", "readings"]
    return all(probe.get_item(x) for x in items)


def looks_like_message_t(probe):
    items = ["header", "metadata", "data", "footer"]
    return all(probe.get_item(x) for x in items)


def test_lookup1():
    probe_def = loader.lookup("MultihopOscilloscopeC$sendbuf")
    probe = probe_def.bind(1)
示例#3
0
#!/usr/bin/env python

import re
import sys
import unittest
import random

from TOSSIM import Tossim
import SimxProbe

from simx.probe import Loader

# Tossim /must/ be initialized first -- doesn't matter if not used directly
Tossim([])
# Only load once, should be tested elsewhere :-)
loader = Loader('app.xml', SimxProbe)


#hack(s) to get unittest asserts
class _Check(unittest.TestCase):
    def runTest(self):
        pass


check = _Check()
# PST- beautiful, but perhaps too much magic
# allows direct use of assertEquals, etc. by importing them
for f in (x for x in dir(check) if re.match("(?:assert|fail)", x)):
    globals()[f] = getattr(check, f)