def test_json_export(self): # Check that file with JSON data exists after export # ToDO validate correctness of data in output file set_run_info(export_json_path='json/test.json') data = test_data1 Exchanger.export_data(data, ExchangeFormat.JSON) os.stat(config['export_json_path'])
def test_json_import(self): # Check that data imported from JSON file has correct structure set_run_info(import_json_path='json/schedule_data.json') data = Exchanger.import_data(ExchangeFormat.JSON) self.assertGreater(len(data), 0) self.assertGreater(len(data['lessons']), 0) self.assertGreater(len(data['days']), 0) self.assertGreater(len(data['time_slots']), 0) self.assertGreater(len(data['auditoriums']), 0) self.assertGreater(len(data['student_groups']), 0)
def test_csv_import(self): # Check that data imported from CSV file has correct structure set_run_info(import_csv_path='csv/') data = Exchanger.import_data(ExchangeFormat.CSV) self.assertGreater(len(data), 0) self.assertGreater(len(data['lessons']), 0) self.assertGreater(len(data['days']), 0) self.assertGreater(len(data['time_slots']), 0) self.assertGreater(len(data['auditoriums']), 0) self.assertGreater(len(data['student_groups']), 0)
def test_initial_population1(self): # Test that created population has given size set_run_info(size_of_population=10, exchange_format=ExchangeFormat.CSV) population, uni_conf = GeneticSchedule.get_initial_population() self.assertEqual(10, len(population))
def test_csv_to_json(self): # Check that file with JSON data exists after transformation set_run_info(import_json_path='json/imported_schedule_data.json') Exchanger.csv_to_json() os.stat(config['import_json_path'])
def test_csv_export(self): set_run_info(export_json_path='json/test.json') data = test_data1 Exchanger.export_data(data, ExchangeFormat.CSV) os.stat(config['export_csv_path'])
def test_json_to_csv(self): set_run_info(import_json_path='json/test.json', export_csv_path='csv/schedule.csv') Exchanger.json_to_csv(config['import_json_path'], config['export_csv_path']) os.stat(config['import_csv_path'])