Example #1
0
class Test(unittest.TestCase):
    def setUp(self):
        data = json.loads(open("../map_data.json").read())
        self.CSAir = Network(data)

    def tearDown(self):
        del self.CSAir

    def test_graph(self):
        origin = "Hong Kong"
        travel_list = ["Taipei", "Hong Kong"]
        '''
        Tests the calculations
        '''
        self.assertEquals(524.55,
                          self.CSAir.calculate_cost(origin, travel_list))
        self.assertEquals(1614,
                          self.CSAir.calculate_distance(origin, travel_list))
        self.assertEquals(233.12,
                          self.CSAir.calculate_time(origin, travel_list))
        '''
        Tests add city
        '''
        city = Metro("ABC", "Jersey City", "United States", "North America", 3,
                     {
                         "N": 25,
                         "W": 14
                     }, 41232312, 11, {})
        self.CSAir.list_of_metros[city.name] = city
        self.assertEquals(True,
                          self.CSAir.list_of_metros.has_key("Jersey City"))
        '''
        Tests remove city
        '''
        removedCity = self.CSAir.list_of_metros.pop("Jersey City")
        for route in removedCity.routes:
            destinationCity = removedCity.routes[route].destination
            for returnRoute in destinationCity.routes.keys():
                if returnRoute == removedCity.code:
                    del destinationCity.routes[returnRoute]
        self.CSAir.list_of_routes = [
            route for route in self.CSAir.list_of_routes
            if not (route.destination.name == "Jersey City"
                    or route.origin.name == "Jerey City")
        ]
        self.assertEquals(False,
                          self.CSAir.list_of_metros.has_key("Jersey City"))
Example #2
0
class Test(unittest.TestCase):


    def setUp(self):
        data = json.loads(open("../map_data.json").read())
        self.CSAir = Network(data)

    def tearDown(self):
        del self.CSAir


    def test_graph(self):
        origin = "Hong Kong"
        travel_list = ["Taipei", "Hong Kong"]
        '''
        Tests the calculations
        '''
        self.assertEquals(524.55, self.CSAir.calculate_cost(origin, travel_list))
        self.assertEquals(1614, self.CSAir.calculate_distance(origin, travel_list))
        self.assertEquals(233.12, self.CSAir.calculate_time(origin, travel_list))
        
        '''
        Tests add city
        '''
        city = Metro("ABC", "Jersey City", "United States", "North America", 3, {"N": 25, "W": 14}, 41232312, 11, {})
        self.CSAir.list_of_metros[city.name] = city
        self.assertEquals(True, self.CSAir.list_of_metros.has_key("Jersey City"))
        
        '''
        Tests remove city
        '''
        removedCity = self.CSAir.list_of_metros.pop("Jersey City")
        for route in removedCity.routes:
            destinationCity = removedCity.routes[route].destination
            for returnRoute in destinationCity.routes.keys():
                if returnRoute == removedCity.code:
                    del destinationCity.routes[returnRoute]
        self.CSAir.list_of_routes = [route for route in self.CSAir.list_of_routes if not (route.destination.name == "Jersey City" or 
                                                                                      route.origin.name == "Jerey City")]
        self.assertEquals(False, self.CSAir.list_of_metros.has_key("Jersey City"))
Example #3
0
 def setUp(self):
     data = json.loads(open("../map_data.json").read())
     self.CSAir = Network(data)
Example #4
0
 def setUp(self):
     data = json.loads(open("../map_data.json").read())
     self.CSAir = Network(data)
Example #5
0
        first_file = True
    return master_data


'''
The main code that is actually executed
'''
file_list = []
file_name = ""
while (file_name != "exit"):
    file_name = raw_input(
        "Please enter the files you want to populate the network with. ")
    if (file_name != "exit"):
        file_list.append(file_name)
json_data = generate_data(file_list)
CSAir = Network(json_data)

#A list of commands that includes the text printed for the query, and the function called as a result of selecting that query

commands = [
    ["Print serviced cities.", CSAir.print_cities],
    [
        "Print a list of serviced continents with their serviced cities",
        CSAir.print_continents_and_cities
    ], ["Print city information.", CSAir.print_city_information],
    ["Print the longest flight.", CSAir.print_longest_flight],
    ["Print the shortest flight.", CSAir.print_shortest_flight],
    [
        "Print the average flight distance.",
        CSAir.print_average_flight_distance
    ],