def setUp_deleted(): """ Updates database ton include deleted data """ # print("Restore deleted rows") deleted_actor = Actor.query\ .filter(Actor.id == 1)\ .one_or_none() if deleted_actor is None: actor = Actor(name="Harrison Ford", age=78, gender="Male") actor.id = 1 actor.insert() deleted_movie = Movie.query\ .filter(Movie.id == 1)\ .one_or_none() if deleted_movie is None: movie = Movie(title="The Dark Knight ", release_date="07/14/2008") movie.id = 1 movie.insert() deleted_cast = Cast.query\ .filter(Cast.id == 2)\ .one_or_none() if deleted_cast is None: cast = Cast(actor_id=8, movie_id=5) cast.id = 2 cast.insert() deleted_cast = Cast.query\ .filter(Cast.id == 3)\ .one_or_none() if deleted_cast is None: cast = Cast(actor_id=3, movie_id=6) cast.id = 3 cast.insert() deleted_cast = Cast.query\ .filter(Cast.id == 4)\ .one_or_none() if deleted_cast is None: cast = Cast(actor_id=8, movie_id=8) cast.id = 4 cast.insert() deleted_cast = Cast.query\ .filter(Cast.id == 6)\ .one_or_none() if deleted_cast is None: cast = Cast(actor_id=1, movie_id=2) cast.id = 6 cast.insert() deleted_cast = Cast.query\ .filter(Cast.id == 7)\ .one_or_none() if deleted_cast is None: cast = Cast(actor_id=2, movie_id=1) cast.id = 7 cast.insert()
def test_delete_movie(self): movie = Movie(title='titanic', release_date='2018-01-02', actor_id=[2]) movie.id = 100 movie.insert() res = self.client().delete( '/movies/100', headers={'Authorization': executive_producer_token}) self.assertEqual(res.status_code, 200)
def test_patch_movie(self): movie = Movie(title='titanic', release_date='2018-01-02', actor_id=[2]) movie.id = 888 movie.insert() res = self.client().patch( '/movies/888', headers={'Authorization': executive_producer_token}, json={"title": "American Pie"}) self.assertEqual(res.status_code, 200) movie.delete()
def test_delete_movie(self): movie = Movie(title='The cube', releaseDate=datetime.datetime(2022, 2, 22), actor_id='1') movie.id = 222 movie.insert() res = self.client().delete( '/movies/222', headers={'Authorization': TOKEN_PRODUCER}, ) data = res.get_json() selection = Movie.query.filter(Movie.id == 222).one_or_none() self.assertEqual(data['status'], True) self.assertEqual(selection, None)
def import_xml(file_name): import xml.etree.cElementTree as et root = et.ElementTree(file=file_name).getroot() theaters = root.findall('theaters')[0] movies = root.findall('movies')[0] show_times = root.findall('showTimes')[0] for theater in theaters: cinema = Cinema(theater.find('name').text, theater.find('telephone').text, theater.find('address').find('streetAddress').find('street').text, theater.find('address').find('city').text, theater.find('address').find('state').text, theater.find('address').find('postalCode').text, theater.find('address').find('country').text, float(theater.find('longitude').text) if theater.find('longitude').text is not None else None, float(theater.find('latitude').text) if theater.find('latitude').text is not None else None) cinema.id = theater.attrib['theaterId'] db.session.add(cinema) for movie in movies: mov = Movie(movie.find('officialTitle').text, movie.find('sinopsis').text if movie.find('sinopsis') is not None else None, movie.find('format').text, int(movie.find('runningTime').text) if movie.find('runningTime').text is not None else None, movie.find('imdb').text if movie.find('imdb') is not None else None, movie.find('version').text == 'Z', movie.find('ratings').find('rating').text, movie.find('cartel').text.split('.')[0] + '.jpg') mov.id = movie.attrib['movieId'] db.session.add(mov) for show_time in show_times: for time in show_time.find('times').findall('time'): if Movie.query.get(show_time.attrib['movieId']) and Cinema.query.get(show_time.attrib['theaterId']): showtime = ShowTime(show_time.attrib['theaterId'], show_time.attrib['movieId'], time.text[0:2] + ':' + time.text[2:4]) db.session.merge(showtime) db.session.commit()
def test_patch_movie(self): movie = Movie(title='The cube', releaseDate=datetime.datetime(2022, 2, 22), actor_id='1') movie.id = 222 movie.insert() res = self.client().patch('/movies/222', headers={'Authorization': TOKEN_PRODUCER}, json={ "title": "avengers vs godzilla", "releaseDate": "2021-03-25 11:55:11.271041" }) data = res.get_json() selection = Movie.query.filter(Movie.id == 222).one_or_none() self.assertEqual(data['status'], True) self.assertEqual(selection.title, 'avengers vs godzilla') selection.delete()
def retrieve_movies(payload): current_movies = Movie.query.order_by(Movie.title).all() if len(current_movies) == 0: abort(414) print('Movies Retrieved:' + str(len(Movie.query.all()))) movies = [] strTable = "<table>" strTable += "<tr><th>ID</th><th>Title</th><th>Date</th></tr>" for movie in current_movies: d = Movie() d.id = movie.id d.title = movie.title d.release_date = movie.release_date movies.append(d) strTable += "<tr><td>" + str( movie.id ) + "</td><td>" + movie.title + "</td><td>" + movie.release_date + "</td></tr>" strTable += "</table>" return strTable
async def add_movie(movie: Movie): if hasattr(movie, 'id'): delattr(movie, 'id') ret = db.movies.insert_one(movie.dict(by_alias=True)) movie.id = ret.inserted_id return {'movie': movie}