示例#1
0
def test_init():
    actor1 = Actor("Angelina Jolie")
    assert repr(actor1) == "<Actor Angelina Jolie>"
    actor2 = Actor("")
    assert actor2.actor_full_name is None
    actor3 = Actor(55)
    assert actor3.actor_full_name is None
示例#2
0
def test_init():
    actor = Actor("Angelina Jolie")
    assert repr(actor) == "<Actor Angelina Jolie>"
    actor = Actor("")
    assert actor.actor_full_name is None
    assert repr(actor) == "<Actor None>"
    actor = Actor(42)
    assert actor.actor_full_name is None
    assert repr(actor) == "<Actor None>"
示例#3
0
def test_add_colleague():
    actor = Actor("actor")
    valid_colleague = Actor("colleague")
    invalid_colleague = "colleague"
    actor.add_actor_colleague(valid_colleague)
    assert actor.check_if_this_actor_worked_with(valid_colleague)
    with pytest.raises(TypeError):
        actor.add_actor_colleague(invalid_colleague)
示例#4
0
    def read_csv_file(self):
        with open(self._data_path, mode='r', encoding='utf-8-sig') as f:
            records = csv.DictReader(f)
            for record in records:
                movie = Movie(record.get('Title'), int(record.get('Year', 0)))

                for actor in self._read_field(record, 'Actors', ','):
                    actor = Actor(actor)
                    movie.add_actor(actor)
                    self._dataset_of_actors.add(actor)

                for genre in self._read_field(record, 'Genre', ','):
                    genre = Genre(genre)
                    movie.add_genre(genre)
                    self._dataset_of_genres.add(genre)

                for director in self._read_field(record, 'Director', ','):
                    director = Director(director)
                    movie.set_director(director)
                    self._dataset_of_directors.add(director)

                movie.description = record.get('Description')
                movie.runtime_minutes = int(record.get('Runtime (Minutes)'))

                self._dataset_of_movies.add(movie)
示例#5
0
def test_equal():
    actor_none_1 = Actor("")
    actor_none_2 = Actor("")
    assert actor_none_1 == actor_none_2
    actor_1 = Actor("Angelina Jolie")
    actor_2 = Actor("Angelina Jolie")
    assert actor_1 == actor_2
    actor_1 = Actor("Angelina Jolie1")
    actor_2 = Actor("Angelina Jolie2")
    assert actor_1 != actor_2
    assert actor_none_1 != actor_1
    actor_1 = Actor("Actor")
    actor_2 = "Actor"
    assert actor_1 != actor_2
示例#6
0
    def read_csv_file(self):
        try:
            TheCVS_file = open(self.file_name,
                               encoding='utf-8-sig',
                               newline='')
            to_reader = csv.DictReader(TheCVS_file)

            for All_row in to_reader:
                try:
                    movie = Movie(All_row['Title'].strip(),
                                  int(All_row['Year'].strip()))
                    actors = All_row['Actors'].split(',')

                    for num in range(len(actors)):
                        actors[num] = Actor(actors[num].strip())

                    split_rows = All_row['Genre'].split(',')
                    director = Director(All_row['Director'].strip())
                    genres = split_rows

                    for num in range(len(genres)):
                        genres[num] = Genre(genres[num].strip())

                    self.movies.append(movie)
                    self.actors.update(set(actors))

                    self.directors.add(director)
                    self.genres.update(set(genres))

                except:
                    continue

            TheCVS_file.close()

        except:
            raise Exception("Error while reading CSV file!")
示例#7
0
def test_hash():
    actor1 = Actor("Actor A")
    assert hash(actor1) == hash("Actor A")
    actor_none = Actor("")
    assert hash(actor_none) == hash(None)
示例#8
0
def test_type_mismatch():
    actor = Actor("Actor")
    other = "Actor"
    with pytest.raises(TypeError):
        return actor < other
示例#9
0
def test_lt():
    actor_1 = Actor("Actor A")
    actor_2 = Actor("Actor B")
    assert actor_1 < actor_2
示例#10
0
def test_lt():
    actor1 = Actor("Actor one")
    actor2 = Actor("Actor two")
    assert actor1 < actor2