def newNode(self, data):
     MeshNode.newNode(self, data)
     print data + " joined"
     if (data == failnode.name):
         m.removeMeshNode(failnode)
         n = MeshNode("joinnode", m)
         m.addMeshNode(n)
         m.connect_duplex(self, n, 1024, 50, 0.30)
     if (data == "joinnode"):
         global success
         success = True
         reactor.crash()
            m.addMeshNode(n)
            m.connect_duplex(self, n, 1024, 50, 0.30)
        if (data == "joinnode"):
            global success
            success = True
            reactor.crash()

    def lostNode(self, data):
        MeshNode.lostNode(self, data)
        print data + " lost"


n = TestMeshNode("node", m)
m.addMeshNode(n)

failnode = MeshNode("failnode", m)
m.addMeshNode(failnode)

# Connect all nodes to all others. 1024 bytes/s bandwidth, 50ms delay and 0%
# packet loss.. (bandwidth and delay aren't implemented just yet)
m.connect_full(1024, 50, 0.30)

reactor.run()

if not success:
    print "FAILED"
    exit(1)

print "SUCCESS"
exit(0)
Beispiel #3
0
      print node.name + " - " + sender + " - " + data.rstrip()
      if self.expected == None:
        self.expected = value
      if self.expected > 2 and self.expected != value:
        print "Expected: " + str(self.expected) + " But got: " + str(value)
        success = False
        reactor.crash()
      self.expected = value + 1

      if self.expected > 50:
        reactor.crash()

m = TestMesh()

for x in xrange(0, 3):
  n = MeshNode("node" + str(x), m)
  nodes.append(n)
  m.addMeshNode(n)

n = TestMeshNode("node3", m)
nodes.append(n)
m.addMeshNode(n)


#connect node 0 and 1 together with dropfree links, and  0 <->2 and 1 <-> 2
# with quite lossy links
m.connect_duplex(nodes[0], nodes[1], 100, 0, 0)
m.connect_duplex(nodes[0], nodes[2], 100, 0, 0)

m.connect_duplex(nodes[1], nodes[2], 100, 0, 0)