// Path: src/main/java/com/deswaef/twitch/api/user/domain/User.java
// public class User {
// 
//     private String name;
//     @SerializedName(value = "created_at")
//     private Date createdAt;
//     @SerializedName(value = "updated_at")
//     private Date updatedAt;
//     private String logo;
//     @SerializedName(value = "_id")
//     private Long id;
//     private String email;
//     @SerializedName("display_name")
//     private String displayName;
//     private boolean partnered;
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Date getCreatedAt() {
//         return createdAt;
//     }
// 
//     public void setCreatedAt(Date createdAt) {
//         this.createdAt = createdAt;
//     }
// 
//     public Date getUpdatedAt() {
//         return updatedAt;
//     }
// 
//     public void setUpdatedAt(Date updatedAt) {
//         this.updatedAt = updatedAt;
//     }
// 
//     public String getLogo() {
//         return logo;
//     }
// 
//     public void setLogo(String logo) {
//         this.logo = logo;
//     }
// 
//     public Long getId() {
//         return id;
//     }
// 
//     public void setId(Long id) {
//         this.id = id;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public void setEmail(String email) {
//         this.email = email;
//     }
// 
//     public String getDisplayName() {
//         return displayName;
//     }
// 
//     public void setDisplayName(String displayName) {
//         this.displayName = displayName;
//     }
// 
//     public boolean isPartnered() {
//         return partnered;
//     }
// 
//     public void setPartnered(boolean partnered) {
//         this.partnered = partnered;
//     }
// }


import com.deswaef.twitch.api.user.domain.User;
import net.vidageek.mirror.dsl.Mirror;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import retrofit.RestAdapter;
import java.util.Optional;
import static org.fest.assertions.Assertions.assertThat;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
package com.deswaef.twitch.api.user;




@RunWith(MockitoJUnitRunner.class)
public class UserResourceTest {

    public static final String TOKEN = "this_is_token";
    public static final String BASE_URL = "https://api.twitch.tv/kraken";
    public RestAdapter restAdapter;

    private UserResource userResource;

    @Before
    public void init() {
        restAdapter = new RestAdapter.Builder().setEndpoint(BASE_URL).build();
        userResource = new UserResource().url(restAdapter);
    }

    @Test
    public void initializedAndUrlIsSet() {
        userResource = new UserResource().url(restAdapter);
        assertThat(new Mirror().on(userResource).get().field("userService")).isNotNull();
    }


    @Test
    public void getPublicUser() {
// Path: src/main/java/com/deswaef/twitch/api/user/domain/User.java
// public class User {
// 
//     private String name;
//     @SerializedName(value = "created_at")
//     private Date createdAt;
//     @SerializedName(value = "updated_at")
//     private Date updatedAt;
//     private String logo;
//     @SerializedName(value = "_id")
//     private Long id;
//     private String email;
//     @SerializedName("display_name")
//     private String displayName;
//     private boolean partnered;
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Date getCreatedAt() {
//         return createdAt;
//     }
// 
//     public void setCreatedAt(Date createdAt) {
//         this.createdAt = createdAt;
//     }
// 
//     public Date getUpdatedAt() {
//         return updatedAt;
//     }
// 
//     public void setUpdatedAt(Date updatedAt) {
//         this.updatedAt = updatedAt;
//     }
// 
//     public String getLogo() {
//         return logo;
//     }
// 
//     public void setLogo(String logo) {
//         this.logo = logo;
//     }
// 
//     public Long getId() {
//         return id;
//     }
// 
//     public void setId(Long id) {
//         this.id = id;
//     }
// 
//     public String getEmail() {
//         return email;
//     }
// 
//     public void setEmail(String email) {
//         this.email = email;
//     }
// 
//     public String getDisplayName() {
//         return displayName;
//     }
// 
//     public void setDisplayName(String displayName) {
//         this.displayName = displayName;
//     }
// 
//     public boolean isPartnered() {
//         return partnered;
//     }
// 
//     public void setPartnered(boolean partnered) {
//         this.partnered = partnered;
//     }
// }


// Path: src/test/java/com/deswaef/twitch/api/user/UserResourceTest.java
import com.deswaef.twitch.api.user.domain.User;
import net.vidageek.mirror.dsl.Mirror;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import retrofit.RestAdapter;
import java.util.Optional;
import static org.fest.assertions.Assertions.assertThat;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

package com.deswaef.twitch.api.user;




@RunWith(MockitoJUnitRunner.class)
public class UserResourceTest {

    public static final String TOKEN = "this_is_token";
    public static final String BASE_URL = "https://api.twitch.tv/kraken";
    public RestAdapter restAdapter;

    private UserResource userResource;

    @Before
    public void init() {
        restAdapter = new RestAdapter.Builder().setEndpoint(BASE_URL).build();
        userResource = new UserResource().url(restAdapter);
    }

    @Test
    public void initializedAndUrlIsSet() {
        userResource = new UserResource().url(restAdapter);
        assertThat(new Mirror().on(userResource).get().field("userService")).isNotNull();
    }


    @Test
    public void getPublicUser() {
        Optional<User> streamingforanimals = userResource.user("streamingforanimals");