def testImplicitRemoval(self):
     r1 = RIPRouter()
     r1.name = "r1"
     r2 = RIPRouter()
     r2.name = "r2"
     r3 = RIPRouter()
     r3.name = "r3"
     r4 = RIPRouter()
     r4.name = "r4"
     r5 = RIPRouter()
     r5.name = "r5"
     r6 = RIPRouter()
     r6.name = "r6"
             
     r1.neighbor_ports = {r2:2,r3:3}
     r1.distance_vector.dest_via_nbors = {r2:{None:0},r3:{None:0},r4:{r2:1,r3:1},r5:{r2:3},r6:{r2:5}}
     packet = RoutingUpdate()
     packet.src = r2
     packet.paths = {r1:1,r4:1}
     r1.handle_rx(packet, 2)
     self.failUnless(r1.distance_vector.dest_via_nbors == {r2:{None:0},r3:{None:0},r4:{r3:1,r2:1}})