1387
1391
self.phoenix.set_title('Place 1')
1388
1392
self.titanic = Place(self.phoenix)
1389
1393
self.ref_obj = Place(self.phoenix)
1394
self.amsterdam = PlaceName()
1395
self.amsterdam.set_value('Amsterdam')
1396
self.rotterdam = PlaceName()
1397
self.rotterdam.set_value('Rotterdam')
1398
self.utrecht = PlaceName()
1399
self.utrecht.set_value('Utrecht')
1400
self.leiden = PlaceName()
1401
self.leiden.set_value('Leiden')
1391
1403
def test_merge_primary_identical(self):
1392
self.phoenix.set_name('Amsterdam')
1404
self.phoenix.set_name(self.amsterdam)
1393
1405
self.phoenix.set_type(PlaceType.CITY)
1394
1406
self.titanic.set_title('Place 2')
1395
self.titanic.set_name('Amsterdam')
1407
self.titanic.set_name(self.amsterdam)
1396
1408
self.titanic.set_type(PlaceType.CITY)
1397
self.ref_obj.set_name('Amsterdam')
1409
self.ref_obj.set_name(self.amsterdam)
1398
1410
self.ref_obj.set_type(PlaceType.CITY)
1399
1411
self.phoenix.merge(self.titanic)
1400
1412
self.assertEqual(self.phoenix.serialize(), self.ref_obj.serialize())
1402
1414
def test_merge_primary_different(self):
1403
self.phoenix.set_name('Amsterdam')
1415
self.phoenix.set_name(self.amsterdam)
1404
1416
self.phoenix.set_type(PlaceType.CITY)
1405
1417
self.titanic.set_title('Place 2')
1406
self.titanic.set_name('Rotterdam')
1418
self.titanic.set_name(self.rotterdam)
1407
1419
self.titanic.set_type(PlaceType.CITY)
1408
self.ref_obj.set_name('Amsterdam')
1420
self.ref_obj.set_name(self.amsterdam)
1409
1421
self.ref_obj.set_type(PlaceType.CITY)
1410
self.ref_obj.add_alternative_name('Rotterdam')
1422
self.ref_obj.add_alternative_name(self.rotterdam)
1411
1423
self.phoenix.merge(self.titanic)
1412
1424
self.assertEqual(self.phoenix.serialize(), self.ref_obj.serialize())
1414
1426
def test_merge_both_different(self):
1415
self.phoenix.set_name('Amsterdam')
1427
self.phoenix.set_name(self.amsterdam)
1416
1428
self.phoenix.set_type(PlaceType.CITY)
1417
self.phoenix.add_alternative_name('Utrecht')
1429
self.phoenix.add_alternative_name(self.utrecht)
1418
1430
self.titanic.set_title('Place 2')
1419
self.titanic.set_name('Rotterdam')
1431
self.titanic.set_name(self.rotterdam)
1420
1432
self.titanic.set_type(PlaceType.CITY)
1421
self.titanic.add_alternative_name('Leiden')
1422
self.ref_obj.set_name('Amsterdam')
1433
self.titanic.add_alternative_name(self.leiden)
1434
self.ref_obj.set_name(self.amsterdam)
1423
1435
self.ref_obj.set_type(PlaceType.CITY)
1424
self.ref_obj.add_alternative_name('Amsterdam')
1425
self.ref_obj.add_alternative_name('Rotterdam')
1426
self.ref_obj.add_alternative_name('Utrecht')
1427
self.ref_obj.add_alternative_name('Leiden')
1436
self.ref_obj.add_alternative_name(self.amsterdam)
1437
self.ref_obj.add_alternative_name(self.rotterdam)
1438
self.ref_obj.add_alternative_name(self.utrecht)
1439
self.ref_obj.add_alternative_name(self.leiden)
1428
1440
self.phoenix.merge(self.titanic)
1429
1441
self.assertEqual(self.phoenix.serialize(), self.ref_obj.serialize())
1431
1443
def test_merge_alternative_identical(self):
1432
self.phoenix.set_name('Amsterdam')
1444
self.phoenix.set_name(self.amsterdam)
1433
1445
self.phoenix.set_type(PlaceType.CITY)
1434
self.phoenix.add_alternative_name('Rotterdam')
1446
self.phoenix.add_alternative_name(self.rotterdam)
1435
1447
self.titanic.set_title('Place 2')
1436
self.titanic.set_name('Amsterdam')
1448
self.titanic.set_name(self.amsterdam)
1437
1449
self.titanic.set_type(PlaceType.CITY)
1438
self.titanic.add_alternative_name('Rotterdam')
1439
self.ref_obj.set_name('Amsterdam')
1450
self.titanic.add_alternative_name(self.rotterdam)
1451
self.ref_obj.set_name(self.amsterdam)
1440
1452
self.ref_obj.set_type(PlaceType.CITY)
1441
self.ref_obj.add_alternative_name('Rotterdam')
1453
self.ref_obj.add_alternative_name(self.rotterdam)
1442
1454
self.phoenix.merge(self.titanic)
1443
1455
self.assertEqual(self.phoenix.serialize(), self.ref_obj.serialize())
1445
1457
def test_merge_alternative_different(self):
1446
self.phoenix.set_name('Amsterdam')
1458
self.phoenix.set_name(self.amsterdam)
1447
1459
self.phoenix.set_type(PlaceType.CITY)
1448
self.phoenix.add_alternative_name('Rotterdam')
1460
self.phoenix.add_alternative_name(self.rotterdam)
1449
1461
self.titanic.set_title('Place 2')
1450
self.titanic.set_name('Amsterdam')
1462
self.titanic.set_name(self.amsterdam)
1451
1463
self.titanic.set_type(PlaceType.CITY)
1452
self.titanic.add_alternative_name('Utrecht')
1453
self.ref_obj.set_name('Amsterdam')
1464
self.titanic.add_alternative_name(self.utrecht)
1465
self.ref_obj.set_name(self.amsterdam)
1454
1466
self.ref_obj.set_type(PlaceType.CITY)
1455
self.ref_obj.add_alternative_name('Rotterdam')
1456
self.ref_obj.add_alternative_name('Utrecht')
1467
self.ref_obj.add_alternative_name(self.rotterdam)
1468
self.ref_obj.add_alternative_name(self.utrecht)
1457
1469
self.phoenix.merge(self.titanic)
1458
1470
self.assertEqual(self.phoenix.serialize(), self.ref_obj.serialize())
1460
1472
def test_merge_prialt_identical(self):
1461
self.phoenix.set_name('Amsterdam')
1473
self.phoenix.set_name(self.amsterdam)
1462
1474
self.phoenix.set_type(PlaceType.CITY)
1463
self.phoenix.add_alternative_name('Rotterdam')
1475
self.phoenix.add_alternative_name(self.rotterdam)
1464
1476
self.titanic.set_title('Place 2')
1465
self.titanic.set_name('Rotterdam')
1477
self.titanic.set_name(self.rotterdam)
1466
1478
self.titanic.set_type(PlaceType.CITY)
1467
self.ref_obj.set_name('Amsterdam')
1479
self.ref_obj.set_name(self.amsterdam)
1468
1480
self.ref_obj.set_type(PlaceType.CITY)
1469
self.ref_obj.add_alternative_name('Rotterdam')
1481
self.ref_obj.add_alternative_name(self.rotterdam)
1470
1482
self.phoenix.merge(self.titanic)
1471
1483
self.assertEqual(self.phoenix.serialize(), self.ref_obj.serialize())
1473
1485
def test_merge_prialt2(self):
1474
self.phoenix.set_name('Amsterdam')
1486
self.phoenix.set_name(self.amsterdam)
1475
1487
self.phoenix.set_type(PlaceType.CITY)
1476
self.phoenix.add_alternative_name('Rotterdam')
1488
self.phoenix.add_alternative_name(self.rotterdam)
1477
1489
self.titanic.set_title('Place 2')
1478
self.titanic.set_name('Rotterdam')
1490
self.titanic.set_name(self.rotterdam)
1479
1491
self.titanic.set_type(PlaceType.CITY)
1480
self.titanic.add_alternative_name('Amsterdam')
1481
self.ref_obj.set_name('Amsterdam')
1492
self.titanic.add_alternative_name(self.amsterdam)
1493
self.ref_obj.set_name(self.amsterdam)
1482
1494
self.ref_obj.set_type(PlaceType.CITY)
1483
self.ref_obj.add_alternative_name('Rotterdam')
1495
self.ref_obj.add_alternative_name(self.rotterdam)
1484
1496
self.phoenix.merge(self.titanic)
1485
1497
self.assertEqual(self.phoenix.serialize(), self.ref_obj.serialize())