コード例 #1
0
 def test_add_movies_to_writer(self):
     # writer, Dostoevskiy
     imdb_movie = ImdbMovieFactory(id=475730)
     imdb_person = ImdbPersonFactory(id=234502, person__country=None)
     imdb_person.sync(roles=True)
     self.assertTrue(
         imdb_person.person.career.filter(movie=imdb_movie.movie,
                                          role=self.author))
コード例 #2
0
 def test_add_roles_to_movie_by_imdb_id(self):
     imdb_person1 = ImdbPersonFactory(
         id=905152)  # Lilly Wachowski: director, scenarist, producer
     imdb_person2 = ImdbPersonFactory(id=206)  # Keanu Reeves: Neo
     imdb_person3 = ImdbPersonFactory(id=50390)  # Jeremy Ball: Businessman
     imdb_movie = ImdbMovieFactory(id=133093)
     imdb_movie.sync(roles=True)
     self.assert_matrix_cast(imdb_movie, imdb_person1.person,
                             imdb_person2.person, imdb_person3.person)
コード例 #3
0
 def test_search_and_sync_right_movie_by_person(self, search_movie):
     movie1 = MovieFactory(year=2014, title_en='The Prince')
     movie2 = MovieFactory(year=2014, title_en='The Prince')
     ImdbPersonFactory(id=2357819, person=CastFactory(movie=movie1).person)
     ImdbPersonFactory(id=3167230, person=CastFactory(movie=movie2).person)
     sync_movie(movie1.id)
     sync_movie(movie2.id)
     self.assertEqual(movie1.imdb.id, 1085492)
     self.assertEqual(movie2.imdb.id, 3505782)
     self.assertFalse(search_movie.called)
コード例 #4
0
 def test_stat_page(self):
     for i in range(100):
         ImdbMovieFactory(movie=KinopoiskMovieFactory().movie)
         ImdbPersonFactory(person=KinopoiskPersonFactory().person)
     with self.assertNumQueries(21):
         response = self.client.get(reverse(f'admin:statistic'))
     self.assertEqual(response.status_code, 200)
コード例 #5
0
 def test_sync_person_with_2_ids(self):
     imdb_person = ImdbPersonFactory(id=1890852,
                                     person__country=None,
                                     person__first_name_en='',
                                     person__last_name_en='')
     sync_person(imdb_person.person.id, roles=False)
     self.assertEqual(imdb_person.id, 440022)
コード例 #6
0
 def test_add_authors_to_movie(self):
     imdb_person = ImdbPersonFactory(id=234502)  # writer, Dostoevskiy
     imdb_movie = ImdbMovieFactory(id=475730)
     imdb_movie.sync(roles=True)
     self.assertTrue(
         imdb_movie.movie.cast.get(person=imdb_person.person,
                                   role=self.author))
コード例 #7
0
 def test_sync_movie_with_wrong_person(self):
     dan_brown_wrong = ImdbPersonFactory(id=1640149,
                                         person__country=None,
                                         person__first_name_en='Dan',
                                         person__last_name_en='Brown')
     imdb_movie = ImdbMovieFactory(id=382625,
                                   movie=CastFactory(
                                       person=dan_brown_wrong.person,
                                       role=self.producer).movie)
     sync_movie(imdb_movie.movie.id, roles='all')
     self.assertTrue(
         imdb_movie.movie.cast.get(role=self.producer,
                                   person__imdb__id=1467010))
コード例 #8
0
 def test_sync_person_movies_with_the_same_title(self):
     # person has 2 movies "The Conversation" 1974 and 1995
     movie1 = MovieFactory(title_en='The Conversation', year=1974)
     imdb_person = ImdbPersonFactory(id=338)
     CastFactory(movie=movie1,
                 person=imdb_person.person,
                 role=self.producer)
     sync_person(imdb_person.person.id, roles='all')
     self.assertTrue(
         imdb_person.person.career.get(role=self.producer,
                                       movie=movie1,
                                       movie__imdb__id=71360))
     self.assertTrue(
         imdb_person.person.career.get(role=self.producer,
                                       movie__imdb__id=8041860))
コード例 #9
0
 def test_person_with_related_sites(self):
     p = ImdbPersonFactory(person=KinopoiskPersonFactory().person).person
     query = '''
         query Person($id: ID!) {
           person(id: $id) {
             id
             imdb { id, url }
             kinopoisk { id, info, url }
           }
         }
     '''
     with self.assertNumQueries(1):
         result = self.execute(query, dict(id=global_id(p)))
     self.assertEqual(result['person']['imdb']['id'], p.imdb.id)
     self.assertEqual(result['person']['imdb']['url'], p.imdb.url)
     self.assertEqual(result['person']['kinopoisk']['id'], p.kinopoisk.id)
     self.assertEqual(result['person']['kinopoisk']['info'], p.kinopoisk.info)
     self.assertEqual(result['person']['kinopoisk']['url'], p.kinopoisk.url)
コード例 #10
0
 def test_sync_person_with_no_filmography(self):
     imdb_person = ImdbPersonFactory(id=1404411)
     sync_person(imdb_person.person.id, roles='all')
     self.assertEqual(imdb_person.person.career.count(), 0)
コード例 #11
0
 def imdb_dennis_hopper(self):
     return ImdbPersonFactory(id=454, person__country=None, person__first_name_en='', person__last_name_en='')