def decode_string_event(event_info: str): event_info = event_info[1:-1] field_list = event_info.split(',') eid = field_list[0] event_title = field_list[1][2:-1] tags = field_list[2][2:-1] event_date = decode_date(field_list[3] + ',' + field_list[4] + ',' + field_list[5]) description = field_list[6][2:-1] image = field_list[7][2:-1] location = field_list[8][2:-1] expire_date = decode_date(field_list[9] + ',' + field_list[10] + ',' + field_list[11]) decoded_event = EventModel(eid, event_title, tags, description, image, None, [], event_date, location, 0) decoded_event.expire_date = expire_date return decoded_event
def decode_string_event(event_info: str): event_info = event_info[1:-1] event_info = '[' + event_info + ']' field_list = eval(event_info) eid = field_list[0] event_title = field_list[1] tags = field_list[2] event_date = str(field_list[3]) description = field_list[4] image = field_list[5] location = field_list[6] expire_date = str(field_list[7]) address = field_list[8] decoded_event = EventModel(eid, event_title, tags, description, image, None, [], event_date, location, address, 0) decoded_event.expire_date = expire_date return decoded_event
def test_add_event(self): invalid_date = '2018.12.31' invalid_event_1 = EventModel(1, 'event_title_1', 'tags_1', 'description_1', 'image_1', [], [], invalid_date, 'location_1', 'address1', '5') event_id_1 = EventController.add_event(self.event_1) self.assertIsNotNone(event_id_1) self.assertIsNotNone(EventController.add_event(invalid_event_1))
def post_event(data): event = EventModel(0, data['title'], data['tags'], data['description'], data['image'], data['hosts'], [], data['event_date'], data['state'], data['address'], data['register_period']) EventController.print_event(event) result = EventController.add_event(event) if result == Errors.DUPLICATE.name: event.eid = None return Errors.DUPLICATE.name, None elif result == Errors.FAILURE.name: event.eid = None return Errors.FAILURE.name, None print('Event #' + str(result) + ' has been posted. \n') event.eid = result result = EventController.host_event(event.hosts, event) if result == Errors.DUPLICATE.name: current_event.eid = None print("You have already hosted this event. \n") return Errors.DUPLICATE.name elif result == Errors.FAILURE.name: current_event.eid = None return Errors.FAILURE.name EventController.print_event(event) data = { 'eid': event.eid, 'title': event.title, 'tags': event.tags, 'description': event.description, 'hosts': event.hosts, 'event_date': event.event_date, 'state': event.location, 'address': event.address, 'image': event.image, 'register_period': event.register_period, 'expire_date': event.expire_date } return 'OK', data
def update_event(data): event = EventModel(data['id'], data['title'], data['tags'], data['description'], data['image'], data['hosts'], [], data['event_date'], data['state'], data['address'], data['register_period']) EventController.print_event(event) result = EventController.edit_event(event) if result == Errors.MISSING.name: return Errors.MISSING.name elif result == Errors.SUCCESS.name: return Errors.SUCCESS.name else: return Errors.FAILURE.name
def read_event(): eid = 0 event_title = str(title_input.get()) tags = stringToEnum(str(tags_input.get())) description = str(description_input.get()) image = str(image_input.get()) hosts = None attendees = [] event_date = str(event_date_input.get()) location = str(location_input.get()) register_period = str(period_input.get()) new_event = EventModel(eid, event_title, tags.name, description, image, hosts, attendees, event_date, location, register_period) return new_event
class Test(unittest.TestCase): date = '2018-10-31' event_1 = EventModel(1, 'event_title_1', 'tags_1', 'description_1', 'image_1', [], [], date, 'location_1', '5') user_1 = UserModel(1, 'real_name_1', 'nickname_1', 'gender_1', 'email_1', 'location_1', 'tags_1', 'description_1', [], []) # test event model def test_post_event(self): event_id_1 = EventController.post_event(self.user_1, self.event_1) self.assertIsNotNone(event_id_1) def test_edit_event(self): # def test_expire: # def test_remove_user: # def test_join_event: # def test_host_event: # def test_hosted_event: # def test_get_hosted_event: # test user model def test_add_user(self): UserController.delete_user('nickname_1', 'email_1') self.assertEqual(UserController.add_user(self.user_1), 'SUCCESS') self.assertEqual(UserController.add_user(self.user_1), 'DUPLICATE') UserController.delete_user('nickname_1', 'email_1') def test_delete_user(self): self.assertEqual(UserController.delete_user('nickname_1', 'email_1'), 'SUCCESS') self.assertEqual(UserController.delete_user('fake_nickname_1', 'fake_email_1'), 'SUCCESS') # def test_edit_user: # def test_retrieve_user: if __name__ == '__main__': # log_file = 'unittest_log.txt' # f = open(log_file, 'a') # runner = unittest.TextTestRunner(f) # unittest.main(testRunner=runner) # f.close() unittest.main()
def post(self): data = EventResource.parser.parse_args() user = UserModel.find_by_username(data['username']) session = EventModel.find_session(user, data['createdOn']) if (session): session.event = data['event'] session.save_to_db() return {"message": user.json(), "payload": session.json()}, 200 else: session = EventModel(data['event'], data['createdOn']) session.user = user session.save_to_db() return {"message": user.json(), "payload": session.json()}, 200
class Test(unittest.TestCase): date = '2018-10-31' event_1 = EventModel(1, 'event_title_1', 'tags_1', 'description_1', 'image_1', [], [], date, 'location_1', '5') user_1 = UserModel(1, 'real_name_1', 'nickname_1', 'gender_1', 'email_1', 'location_1', 'tags_1', 'description_1', [], []) # test event model def test_post_event(self): event_id_1 = EventController.add_event(self.user_1, self.event_1) self.assertIsNotNone(event_id_1) # def test_edit_event(self): # def test_expire: # def test_remove_user: # def test_join_event: # def test_host_event: # def test_hosted_event: # def test_get_hosted_event: # test user model def test_add_user(self): UserController.delete_user('nickname_1', 'email_1') self.assertEqual(UserController.add_user(self.user_1), 'SUCCESS') self.assertEqual(UserController.add_user(self.user_1), 'DUPLICATE') UserController.delete_user('nickname_1', 'email_1') def test_delete_user(self): UserController.add_user(self.user_1) self.assertEqual(UserController.delete_user('nickname_1', 'email_1'), 'SUCCESS') self.assertEqual( UserController.delete_user('fake_nickname_1', 'fake_email_1'), 'SUCCESS')
def get(self): return { "payload": list(map(lambda x: x.json(), list(EventModel.get_all_events()))) }
class Test(unittest.TestCase): date = '2018-12-01' event_1 = EventModel(1, 'event_title_1', 'tags_1', 'description_1', 'image_1', [], [], date, 'location_1', 'address1', '5') user_1 = UserModel(1, 'real_name_1', 'nickname_1', 'gender_1', 'email_1', 'location_1', 'tags_1', 'description_1', [], [], 'image_1', 'googleid_1') user_2 = UserModel(2, 'real_name_2', 'nickname_2', 'gender_2', 'email_2', 'location_2', 'tags_2', 'description_2', [], [], 'image_2', 'googleid_2') # test event model def test_add_event(self): invalid_date = '2018.12.31' invalid_event_1 = EventModel(1, 'event_title_1', 'tags_1', 'description_1', 'image_1', [], [], invalid_date, 'location_1', 'address1', '5') event_id_1 = EventController.add_event(self.event_1) self.assertIsNotNone(event_id_1) self.assertIsNotNone(EventController.add_event(invalid_event_1)) # def test_retrieve_event(self): # # # UserController.delete_user('nickname_1', 'email_1') # # # UserController.add_user(self.user_1) # # # user_2 = UserController.retrieve_user('email', 'email_1') # # # event_id = EventController.add_event(self.user_2, self.event_1) # # # self.event_1.eventid = event_id # # # EventController.host_event(user_2, self.event_1) # event_2 = EventController.retrieve_event('1') # self.assertIsInstance(event_2, EventModel) # self.assertEqual(EventController.retrieve_event('-1'), 'MISSING') # # UserController.delete_user('nickname_1', 'email_1') # def test_edit_event(self): # event_id = EventController.add_event(self.event_1) # event_2 = EventModel(1, 'event_title_2', 'tags_2', 'description_2', 'image_2', [], [], self.date, 'location_2', 'address_2', '5') # event_2.image = 'image_3' # self.assertEqual(EventController.edit_event(event_2), 'SUCCESS') # event_2.image = 'image_2' # self.assertEqual(EventController.edit_event(event_2), 'SUCCESS') # self.assertEqual(EventController.edit_event(event_2), 'MISSING') # def test_expire: # def test_remove_user: # def test_join_event: def test_host_event(self): UserController.add_user(self.user_1) user_2 = UserController.retrieve_user('email', 'email_1') event_id = EventController.add_event(self.event_1) self.event_1.eventid = event_id self.assertIsNotNone(EventController.host_event(user_2, self.event_1)) UserController.delete_user('nickname_1', 'email_1') # def test_hosted_event: # def test_get_hosted_event: # test user model def test_add_user(self): UserController.delete_user('nickname_2', 'email_2') self.assertEqual(UserController.add_user(self.user_2), 'SUCCESS') self.assertEqual(UserController.add_user(self.user_2), 'DUPLICATE') UserController.delete_user('nickname_2', 'email_2') def test_delete_user(self): UserController.add_user(self.user_2) self.assertEqual(UserController.delete_user('nickname_2', 'email_2'), 'SUCCESS') self.assertEqual( UserController.delete_user('fake_nickname_1', 'fake_email_1'), 'SUCCESS') def test_edit_user_1(self): UserController.delete_user('nickname_3', 'email_2') UserController.delete_user('nickname_2', 'email_2') UserController.add_user(self.user_2) user_3 = UserController.retrieve_user('email', 'email_2') user_3.nickname = 'nickname_3' self.assertIsNot(UserController.edit_user(user_3), 'MISSING' or 'DUPLICATE' or 'FAILURE') self.assertEqual(UserController.edit_user(user_3), 'MISSING') self.assertEqual( UserController.retrieve_user('email', 'email_2').nickname, 'nickname_3') UserController.delete_user('nickname_3', 'email_2') def test_edit_user_2(self): UserController.delete_user('nickname_3', 'email_2') UserController.delete_user('nickname_2', 'email_2') UserController.add_user(self.user_2) user_3 = UserController.retrieve_user('email', 'email_2') user_3.location = 'location_3' self.assertIsNot(UserController.edit_user(user_3), 'MISSING' or 'DUPLICATE' or 'FAILURE') self.assertEqual(UserController.edit_user(user_3), 'MISSING') self.assertEqual( UserController.retrieve_user('email', 'email_2').location, 'location_3') UserController.delete_user('nickname_3', 'email_2') def test_retrieve_user(self): UserController.delete_user('nickname_1', 'email_1') UserController.delete_user('nickname_2', 'email_2') UserController.add_user(self.user_1) self.assertIsInstance(UserController.retrieve_user('email', 'email_1'), UserModel) self.assertEqual(UserController.retrieve_user('email', 'email_2'), 'MISSING') UserController.delete_user('nickname_1', 'email_1')