Esempio n. 1
0
def test_repository_can_retrieve_movie_count(session_factory):
    repo = SqlAlchemyRepository(session_factory)

    number_of_movies = repo.get_number_of_movies()

    # Check that the query returned 5 Movies.
    assert number_of_movies == 5
Esempio n. 2
0
def test_repository_does_not_retrieve_movies_for_non_existent_id(
        session_factory):
    repo = SqlAlchemyRepository(session_factory)
    movies = repo.get_movies_by_id([2, 9])

    assert len(movies) == 1
    assert movies[0].title == 'Prometheus'
Esempio n. 3
0
def test_repository_can_get_movies_by_ids(session_factory):
    repo = SqlAlchemyRepository(session_factory)
    movies = repo.get_movies_by_id([2, 5, 4])

    assert len(movies) == 3
    assert movies[0].title == 'Prometheus'
    assert movies[1].runtime == 108
    assert movies[2].ratings == 6.2
Esempio n. 4
0
def test_repository_can_retrieve_movie_by_id(session_factory):
    repo = SqlAlchemyRepository(session_factory)

    movie = repo.get_movie_by_id(1)

    # Check that the Movie has the expected title.
    assert movie.title == 'Guardians of the Galaxy'
    assert movie.year == 2014
Esempio n. 5
0
def test_repository_can_retrieve_a_user(session_factory):
    repo = SqlAlchemyRepository(session_factory)

    user = User('fmercury', '8734gfe2058v')
    repo.add_user(user)

    user = repo.get_user('fmercury')
    assert user.user_name == user.user_name
Esempio n. 6
0
def test_repository_can_retrieve_movie_by_name_and_year(session_factory):
    repo = SqlAlchemyRepository(session_factory)
    movie = repo.get_movie('Suicide Squad', 2016)

    # Check that the Movie has the expected title.
    assert movie.title == 'Suicide Squad'

    # Check that Movie has expected run time
    assert movie.runtime == 123
Esempio n. 7
0
def test_repository_can_add_a_user(session_factory):
    repo = SqlAlchemyRepository(session_factory)

    user = User('Dave', '123456789')
    repo.add_user(user)

    user2 = repo.get_user('Dave')

    assert user.user_name == user.user_name
Esempio n. 8
0
def test_repository_can_add_movie(session_factory):
    repo = SqlAlchemyRepository(session_factory)

    number_of_movies = repo.get_number_of_movies()

    new_movie_id = number_of_movies + 1

    movie = Movie(
        new_movie_id, 'The Great Wall', 2016,
        'European mercenaries searching for black powder become '
        'embroiled in the defense of the Great Wall of China against a '
        'horde of monstrous creatures.', 103, 6.1)
    repo.add_movie(movie)
Esempio n. 9
0
def test_repository_can_add_a_genre(session_factory):
    repo = SqlAlchemyRepository(session_factory)
    genre = Genre('Sports')
    repo.add_genre(genre)

    assert genre in repo.get_genres()
Esempio n. 10
0
def test_repository_returns_an_empty_list_for_non_existent_ids(
        session_factory):
    repo = SqlAlchemyRepository(session_factory)
    articles = repo.get_movies_by_id([0, 9])

    assert len(articles) == 0
Esempio n. 11
0
def test_repository_does_not_retrieve_a_movie_when_there_are_no_movie_for_a_name_and_year(
        session_factory):
    repo = SqlAlchemyRepository(session_factory)
    movie = repo.get_movie('Moana', 2016)
    assert movie is None
Esempio n. 12
0
def test_repository_does_not_retrieve_a_non_existent_movie(session_factory):
    repo = SqlAlchemyRepository(session_factory)
    movie = repo.get_movie_by_id(8)
    assert movie is None
Esempio n. 13
0
def test_repository_does_not_retrieve_a_non_existent_user(session_factory):
    repo = SqlAlchemyRepository(session_factory)

    user = repo.get_user('prince')
    assert user is None