Exemplo n.º 1
0
    def testMergeLists(self):
        contactList1 = ContactList();
        contactList1.addContact(Contact('name1', "1234"))
        contactList1.addContact(Contact('name2', "2345"))
        contactList1.addContact(Contact('name3', "3456"))

        contactList2 = ContactList();
        contactList2.addContact(Contact('name1', "6789"))
        contactList2.addContact(Contact('name2', "6789"))
        contactList2.addContact(Contact('name3', "6789"))

        contactList1.mergeContacts(contactList2)
        self.assertEqual(3, len(contactList1.contacts))
        self.assertEqual('1234', contactList1.contacts['name1'])
        self.assertEqual('2345', contactList1.contacts['name2'])
        self.assertEqual('3456', contactList1.contacts['name3'])

        contactList2.addContact(Contact('name4', "6789"))

        contactList1.mergeContacts(contactList2)
        self.assertEqual(4, len(contactList1.contacts))
        self.assertEqual('1234', contactList1.contacts['name1'])
        self.assertEqual('2345', contactList1.contacts['name2'])
        self.assertEqual('3456', contactList1.contacts['name3'])
        self.assertEqual('6789', contactList1.contacts['name4'])
    def testMergeLists(self):
        contactList1 = ContactList()
        contactList1.addContact(Contact('name1', "1234"))
        contactList1.addContact(Contact('name2', "2345"))
        contactList1.addContact(Contact('name3', "3456"))

        contactList2 = ContactList()
        contactList2.addContact(Contact('name1', "6789"))
        contactList2.addContact(Contact('name2', "6789"))
        contactList2.addContact(Contact('name3', "6789"))

        contactList1.mergeContacts(contactList2)
        self.assertEqual(3, len(contactList1.contacts))
        self.assertEqual('1234', contactList1.contacts['name1'])
        self.assertEqual('2345', contactList1.contacts['name2'])
        self.assertEqual('3456', contactList1.contacts['name3'])

        contactList2.addContact(Contact('name4', "6789"))

        contactList1.mergeContacts(contactList2)
        self.assertEqual(4, len(contactList1.contacts))
        self.assertEqual('1234', contactList1.contacts['name1'])
        self.assertEqual('2345', contactList1.contacts['name2'])
        self.assertEqual('3456', contactList1.contacts['name3'])
        self.assertEqual('6789', contactList1.contacts['name4'])
    def testSaveLoad(self):
        contactsList = ContactList()

        self.assertEqual({}, contactsList.contacts)
        contactsList.addContact(Contact('name1', "1234"))
        contactsList.addContact(Contact('name2', "2345"))
        contactsList.addContact(Contact('name3', "3456"))

        contactsList.save('contactsTest.csv')

        contactListLoaded = ContactList()
        contactListLoaded.load('contactsTest.csv')

        self.assertEqual(3, len(contactListLoaded.contacts))
        self.assertEqual('1234', contactListLoaded.contacts['name1'])
        self.assertEqual('2345', contactListLoaded.contacts['name2'])
        self.assertEqual('3456', contactListLoaded.contacts['name3'])
Exemplo n.º 4
0
 def testSaveLoad(self):
     contactsList = ContactList()
     
     self.assertEqual({}, contactsList.contacts)
     contactsList.addContact(Contact('name1', "1234"))
     contactsList.addContact(Contact('name2', "2345"))
     contactsList.addContact(Contact('name3', "3456"))
     
     contactsList.save('contactsTest.csv')
     
     contactListLoaded = ContactList()
     contactListLoaded.load('contactsTest.csv')
     
     self.assertEqual(3, len(contactListLoaded.contacts))
     self.assertEqual('1234', contactListLoaded.contacts['name1'])
     self.assertEqual('2345', contactListLoaded.contacts['name2'])
     self.assertEqual('3456', contactListLoaded.contacts['name3'])
Exemplo n.º 5
0
class Registrar():
    def __init__(self, address, port):

        self.registered_peers = ContactList()
        self.numPeers = 0
        self.registrar = self.startRegistrar(address, port)
        self.cont = True
        self.blockchain = Blockchain()

    def startRegistrar(self, address, port):
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        sock.bind((address, int(port)))
        sock.listen(100)
        return sock

    def getRegistrar(self):
        print("Successful creation of the Registrar")
        return self.registrar

    def addContact(self, username, uid, address, port):
        self.registered_peers.addContact(str(uid), str(username), str(address),
                                         port)
    def testFindCollisions(self):
        contactList1 = ContactList()
        contactList1.addContact(Contact('name1', "1234"))
        contactList1.addContact(Contact('name2', "2345"))
        contactList1.addContact(Contact('name3', "3456"))

        contactList2 = ContactList()

        self.assertEqual(0, len(contactList1.findCollisions(contactList2)))

        contactList2.addContact(Contact('name1', "6789"))
        contactList2.addContact(Contact('name2', "2345"))
        contactList2.addContact(Contact('name4', "1234"))

        collisions = contactList1.findCollisions(contactList2)
        self.assertEqual(1, len(collisions))
        self.assertEqual("name1", collisions[0].name)
        self.assertEqual("1234", collisions[0].phoneNumber1)
        self.assertEqual("6789", collisions[0].phoneNumber2)
Exemplo n.º 7
0
 def testFindCollisions(self):
     contactList1 = ContactList();
     contactList1.addContact(Contact('name1', "1234"))
     contactList1.addContact(Contact('name2', "2345"))
     contactList1.addContact(Contact('name3', "3456"))
     
     contactList2 = ContactList();
     
     self.assertEqual(0, len(contactList1.findCollisions(contactList2)))
     
     contactList2.addContact(Contact('name1', "6789"))
     contactList2.addContact(Contact('name2', "2345"))
     contactList2.addContact(Contact('name4', "1234"))
     
     collisions = contactList1.findCollisions(contactList2)
     self.assertEqual(1, len(collisions))
     self.assertEqual("name1", collisions[0].name)
     self.assertEqual("1234", collisions[0].phoneNumber1)
     self.assertEqual("6789", collisions[0].phoneNumber2)
    def testMergeListsWithCollisionsResolving(self):
        contactList1 = ContactList()
        contactList1.addContact(Contact('name1', "1234"))
        contactList1.addContact(Contact('name2', "2345"))
        contactList1.addContact(Contact('name3', "3456"))

        contactList2 = ContactList()
        contactList2.addContact(Contact('name1', "6789"))
        contactList2.addContact(Contact('name2', "6789"))
        contactList2.addContact(Contact('name3', "6789"))

        resolvedCollisions = ContactList()
        resolvedCollisions.addContact(Contact('name1', "1234"))
        resolvedCollisions.addContact(Contact('name2', "6789"))
        resolvedCollisions.addContact(Contact('name3', "6789"))

        contactList1.mergeContacts(contactList2, resolvedCollisions)
        self.assertEqual(3, len(contactList1.contacts))
        self.assertEqual('1234', contactList1.contacts['name1'])
        self.assertEqual('6789', contactList1.contacts['name2'])
        self.assertEqual('6789', contactList1.contacts['name3'])
Exemplo n.º 9
0
    def testMergeListsWithCollisionsResolving(self):
        contactList1 = ContactList();
        contactList1.addContact(Contact('name1', "1234"))
        contactList1.addContact(Contact('name2', "2345"))
        contactList1.addContact(Contact('name3', "3456"))

        contactList2 = ContactList();
        contactList2.addContact(Contact('name1', "6789"))
        contactList2.addContact(Contact('name2', "6789"))
        contactList2.addContact(Contact('name3', "6789"))

        resolvedCollisions = ContactList();
        resolvedCollisions.addContact(Contact('name1', "1234"))
        resolvedCollisions.addContact(Contact('name2', "6789"))
        resolvedCollisions.addContact(Contact('name3', "6789"))

        contactList1.mergeContacts(contactList2, resolvedCollisions)
        self.assertEqual(3, len(contactList1.contacts))
        self.assertEqual('1234', contactList1.contacts['name1'])
        self.assertEqual('6789', contactList1.contacts['name2'])
        self.assertEqual('6789', contactList1.contacts['name3'])