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)
#!/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)