Exemple #1
0
def test_films():
    """
    Test API call to /films
    """
    lbxd = Letterboxd()
    films_request = {
        "perPage": 25,
        "sort": "ReleaseDateEarliestFirst",
        # "filmId": ["2bbs", "imdb:tt0087469", "tmdb:89"],
        # "genre": "9a",  # Science Fiction
        # "decade": 1980,
        # "year": 1989,
        # "service": "amazon",  # Amazon
        # "where": ["NotReleased", "InWatchlist"],
        "member": "3P",
        "memberRelationship": "Favorited",
        "includeFriends": "All",
        # "tagCode": "stubs",
        # "tagger": "11Ht",
        # "includeTaggerFriends": "Only",
    }
    films = lbxd.films()
    films_response = films.films(films_request=films_request)
    logging.debug(f"films_response: {films_response}")
    assert isinstance(films_response, dict)
    assert set(films_response_keys()).issubset(
        films_response.keys()
    ), "All keys should be in FilmsResponse"
    # Debug print a simple list of the movies
    film_num = 1
    for film in films_response["items"]:
        logging.debug(f"{film_num}. {film['name']}")
        film_num += 1
Exemple #2
0
def test_films_genres():
    """
    Test API call to /films/genres
    """
    lbxd = Letterboxd()
    films = lbxd.films()
    genres_response = films.genres()
    logging.debug(f"genres_response: {genres_response}")
    assert isinstance(genres_response, dict)
    assert set(genres_response_keys()).issubset(
        genres_response.keys()
    ), "All keys should be in GenresResponse"
    genre = genres_response["items"][0]
    logging.debug(f"genre: {genre}")
    assert set(genre_keys()).issubset(genre.keys()), "All keys should be in the Genre"
Exemple #3
0
def test_films_services():
    """
    Test API call to /films/film-services
    """
    lbxd = Letterboxd()
    # login, so that we can see all of the services available to this member
    LBXD_USERNAME, LBXD_PASSWORD = load_user_pass()
    lbxd.user(LBXD_USERNAME, LBXD_PASSWORD)
    films = lbxd.films()
    film_services_response = films.services()
    logging.debug(f"film_services_response: {film_services_response}")
    assert isinstance(film_services_response, dict)
    assert set(film_services_response_keys()).issubset(
        film_services_response.keys()
    ), "All keys should be in FilmServicesResponse"
    assert isinstance(film_services_response["items"], list)
    service = film_services_response["items"][0]
    assert set(service_keys()).issubset(service.keys()), "All keys should be in Service"