package com.uwetrottmann.trakt.v2.services;

import com.uwetrottmann.trakt.v2.BaseTestCase;
import com.uwetrottmann.trakt.v2.exceptions.OAuthUnauthorizedException;
import com.uwetrottmann.trakt.v2.entities.Movie;
import com.uwetrottmann.trakt.v2.entities.Show;
import com.uwetrottmann.trakt.v2.enums.Extended;
import org.junit.Test;

import java.util.List;

import static org.assertj.core.api.Assertions.assertThat;

public class RecommendationsTest extends BaseTestCase {

    @Test
    public void test_movies() throws OAuthUnauthorizedException {
        List<Movie> movies = getTrakt().recommendations().movies(Extended.DEFAULT_MIN);
        assertThat(movies).isNotEmpty();
    }

    @Test
    public void test_shows() throws OAuthUnauthorizedException {
        List<Show> shows = getTrakt().recommendations().shows(Extended.DEFAULT_MIN);
        assertThat(shows).isNotEmpty();
    }

}

@@ -85,16 +85,59 @@
 stCase;%0A
+import com.uwetrottmann.trakt.v2.TestData;%0A
 import c
@@ -368,16 +368,49 @@
 it.Test;
+%0Aimport retrofit.client.Response;
 %0A%0Aimport
@@ -790,173 +790,656 @@
 est_
-shows() throws OAuthUnauthorizedException %7B%0A        List%3CShow%3E shows = getTrakt().recommendations().shows(Extended.DEFAULT_MIN);%0A        assertThat(shows).isNotEmpty
+dismissMovie() throws OAuthUnauthorizedException %7B%0A        Response response = getTrakt().recommendations().dismissMovie(String.valueOf(TestData.MOVIE_TRAKT_ID));%0A        assertThat(response).isNotNull();%0A    %7D%0A%0A    @Test%0A    public void test_shows() throws OAuthUnauthorizedException %7B%0A        List%3CShow%3E shows = getTrakt().recommendations().shows(Extended.DEFAULT_MIN);%0A        assertThat(shows).isNotEmpty();%0A    %7D%0A%0A    @Test%0A    public void test_dismissShow() throws OAuthUnauthorizedException %7B%0A        Response response = getTrakt().recommendations().dismissShow(String.valueOf(TestData.SHOW_TRAKT_ID));%0A        assertThat(response).isNotNull
 ();%0A

Add tests for hide recommendation endpoints.