tahoe-lafs/src/allmydata/test/test_node.py
2007-05-23 17:55:04 -07:00

43 lines
1.2 KiB
Python

from twisted.trial import unittest
from twisted.internet import defer
from twisted.python import log
from foolscap.eventual import flushEventualQueue
from twisted.application import service
from allmydata.node import Node
from allmydata.util import testutil
class LoggingMultiService(service.MultiService):
def log(self, msg):
pass
class TestNode(Node):
CERTFILE='DEFAULT_CERTFILE_BLANK'
PORTNUMFILE='DEFAULT_PORTNUMFILE_BLANK'
class TestCase(unittest.TestCase, testutil.SignalMixin):
def setUp(self):
self.parent = LoggingMultiService()
self.parent.startService()
def tearDown(self):
log.msg("%s.tearDown" % self.__class__.__name__)
d = defer.succeed(None)
d.addCallback(lambda res: self.parent.stopService())
d.addCallback(flushEventualQueue)
return d
def test_advertised_ip_addresses(self):
open('advertised_ip_addresses','w').write('1.2.3.4:5')
n = TestNode()
n.setServiceParent(self.parent)
d = n.when_tub_ready()
def _check_addresses(ignored_result):
self.failUnless("1.2.3.4:5" in n.tub.registerReference(n), n.tub.registerReference(n))
d.addCallback(_check_addresses)
return d