Exemplo n.º 1
0
def test_swap_cities():
    epsilon = 0.0000000000001
    road_map1 = [ ('Alabama', 'Montgomery', '32.361538', '-86.279118'),
                  ('Alaska', 'Juneau', '58.301935', '-134.41974'),
                  ('Arizona', 'Phoenix', '33.448457', '-112.073844'),
                  ('Arkansas', 'Little Rock', '34.736009', '-92.331122'),
                  ('California', 'Sacramento', '38.555605', '-121.468926') ]

    expected_map1 = [ ('Arkansas', 'Little Rock', '34.736009', '-92.331122'),
                      ('Alaska', 'Juneau', '58.301935', '-134.41974'),
                      ('Arizona', 'Phoenix', '33.448457', '-112.073844'),
                      ('Alabama', 'Montgomery', '32.361538', '-86.279118'),
                      ('California', 'Sacramento', '38.555605', '-121.468926') ]

    expected_map2 = [ ('Alabama', 'Montgomery', '32.361538', '-86.279118'),
                      ('Alaska', 'Juneau', '58.301935', '-134.41974'),
                      ('California', 'Sacramento', '38.555605', '-121.468926'),
                      ('Arkansas', 'Little Rock', '34.736009', '-92.331122'),
                      ('Arizona', 'Phoenix', '33.448457', '-112.073844') ]

    expected_map3 = [ ('Alabama', 'Montgomery', '32.361538', '-86.279118'),
                      ('Alaska', 'Juneau', '58.301935', '-134.41974'),
                      ('Arizona', 'Phoenix', '33.448457', '-112.073844'),
                      ('Arkansas', 'Little Rock', '34.736009', '-92.331122'),
                      ('California', 'Sacramento', '38.555605', '-121.468926') ]

    # Test case 1
    returned = cities.swap_cities(road_map1, 0, 3)
    new_road_map = returned[ 0 ]
    new_total_distance = returned[ 1 ]
    expected_total_distance = 9648.295805724285
    assert expected_map1 == new_road_map
    assert abs(expected_total_distance - new_total_distance) < epsilon

    # Test case 2
    returned = cities.swap_cities(road_map1, 2, 4)
    new_road_map = returned[ 0 ]
    new_total_distance = returned[ 1 ]
    expected_total_distance = 8583.007779472131
    assert expected_map2 == new_road_map
    assert abs(expected_total_distance - new_total_distance) < epsilon

    # Test case 3 (if index1==index2)
    returned = cities.swap_cities(road_map1, 3, 3)
    new_road_map = returned[ 0 ]
    new_total_distance = returned[ 1 ]
    expected_total_distance = 9624.208366999157
    assert expected_map3 == new_road_map
    assert abs(expected_total_distance - new_total_distance) < epsilon
Exemplo n.º 2
0
def test_swap_cities(road_map, index1, index2, expected_road_map,
                     expected_distance):
    original_road_map = copy.copy(road_map)
    new_road_map, total_distance = swap_cities(road_map, index1, index2)
    assert new_road_map == expected_road_map
    assert total_distance == expected_distance
    assert road_map == original_road_map
Exemplo n.º 3
0
def test_swap_cities5():
  x = [('Kentucky', 'Frankfort', '38.197274', '-84.86311'),('Louisiana', 'Baton Rouge', '30.45809', '-91.140229'),('Maine', 'Augusta', '44.323535', '-69.765261')]
  swap = cities.swap_cities(x, 2, 2)
  x = [('Maine', 'Augusta', '44.323535', '-69.765261'),('Louisiana', 'Baton Rouge', '30.45809', '-91.140229'),('Kentucky', 'Frankfort', '38.197274', '-84.86311')]
  assert swap == (x, 3036.927798004586)
Exemplo n.º 4
0
def test_swap_cities2():
    x = [('Kentucky', 'Frankfort', '38.197274', '-84.86311'), ('Louisiana', 'Baton Rouge', '30.45809', '-91.140229')] 
    swap = cities.swap_cities(x, 1, 1)
    x = [('Louisiana', 'Baton Rouge', '30.45809', '-91.140229'),('Kentucky', 'Frankfort', '38.197274', '-84.86311')]
    assert swap == (x, 1285.5038285821333)