def test_update_updates_game(self): update_url = "/games/{}".format(self.game.get_id()) game_number = self.game.get_id() * 100 name = get_incremental_game_name(game_number) description = get_incremental_game_description(game_number) match_size = self.game.get_match_size() game_data = {"name": name, "description": description, "is_active": False} response = self.put(update_url, data=game_data) self.assertEqual(200, response.status_code) game = json.loads(response.data) self.assertIsNotNone(game.get("id")) self.assertIsNotNone(game.get("date_created")) self.assertIsNotNone(game.get("date_modified")) self.assertEqual(name, game.get("name")) self.assertEqual(description, game.get("description")) self.assertEqual(match_size, game.get("match_size")) self.assertEqual(False, game.get("is_active")) # Make sure the game was actually updated in the database saved_game = GamesService.get_instance().get(int(game.get("id"))) self.assertEqual(saved_game.get_id(), game.get("id")) self.assertEqual(Game.dump_datetime(saved_game.get_date_created()), game.get("date_created")) self.assertEqual(Game.dump_datetime(saved_game.get_date_modified()), game.get("date_modified")) self.assertEqual(saved_game.get_name(), game.get("name")) self.assertEqual(saved_game.get_description(), game.get("description")) self.assertEqual(saved_game.get_match_size(), game.get("match_size")) self.assertEqual(saved_game.get_is_active(), game.get("is_active"))
def test_create_returns_created_status(self): game_id = self.NUM_GAMES + 1 create_url = "/games" name = get_incremental_game_name(game_id) description = get_incremental_game_description(game_id) game_data = {"name": name, "description": description, "match_size": 2} response = self.post(create_url, data=game_data) self.assertEqual(201, response.status_code) game = json.loads(response.data) self.assertIsNotNone(game.get("id")) self.assertIsNotNone(game.get("date_created")) self.assertIsNotNone(game.get("date_modified")) self.assertEqual(name, game.get("name")) self.assertEqual(description, game.get("description")) self.assertEqual(2, game.get("match_size")) self.assertEqual(True, game.get("is_active")) # Make sure the game was actually saved to the database saved_game = GamesService.get_instance().get(int(game.get("id"))) self.assertEqual(saved_game.get_id(), game.get("id")) self.assertEqual(Game.dump_datetime(saved_game.get_date_created()), game.get("date_created")) self.assertEqual(Game.dump_datetime(saved_game.get_date_modified()), game.get("date_modified")) self.assertEqual(saved_game.get_name(), game.get("name")) self.assertEqual(saved_game.get_description(), game.get("description")) self.assertEqual(saved_game.get_match_size(), game.get("match_size")) self.assertEqual(saved_game.get_is_active(), game.get("is_active"))
def test_delete_deletes_game(self): delete_url = "/games/{}".format(self.game.get_id()) self.assertEqual(True, self.game.get_is_active()) response = self.delete(delete_url) self.assertEqual(200, response.status_code) game = json.loads(response.data) self.assertIsNotNone(game.get("id")) self.assertIsNotNone(game.get("date_created")) self.assertIsNotNone(game.get("date_modified")) self.assertIsNotNone(game.get("name")) self.assertIsNotNone(game.get("description")) self.assertIsNotNone(game.get("match_size")) self.assertEqual(False, game.get("is_active")) # Make sure the game was actually updated in the database saved_game = GamesService.get_instance().get(int(game.get("id"))) self.assertEqual(saved_game.get_id(), game.get("id")) self.assertEqual(Game.dump_datetime(saved_game.get_date_created()), game.get("date_created")) self.assertEqual(Game.dump_datetime(saved_game.get_date_modified()), game.get("date_modified")) self.assertEqual(saved_game.get_name(), game.get("name")) self.assertEqual(saved_game.get_description(), game.get("description")) self.assertEqual(saved_game.get_match_size(), game.get("match_size")) self.assertEqual(saved_game.get_is_active(), game.get("is_active"))