Package com.tumblr.jumblr.types

Source Code of com.tumblr.jumblr.types.BlogTest

package com.tumblr.jumblr.types;

import com.google.gson.Gson;
import com.tumblr.jumblr.JumblrClient;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;

/**
* Blog tests
* @author jc
*/
public class BlogTest extends TypeTest {

    JumblrClient client;
    Blog blog;

    private String name = "name.com", title = "title", description = "desc";
    private Integer posts = 10, likes = 11, followers = 10;
    private Long updated = 123456L;
    private Boolean ask = false, ask_anon = true;

    @Before
    public void setup() throws IOException {
        Map<String, Object> flat = new HashMap<String, Object>();
        flat.put("name", name);
        flat.put("title", title);
        flat.put("description", description);
        flat.put("posts", posts);
        flat.put("likes", likes);
        flat.put("updated", updated);
        flat.put("ask", ask);
        flat.put("ask_anon", ask_anon);
        flat.put("followers", followers);

        Gson gson = new Gson();
        blog = gson.fromJson(flatSerialize(flat), Blog.class);
        blog.setName(blog.getName());
        client = mock(JumblrClient.class);
        blog.setClient(client);
    }

    @Test
    public void newPost() throws IllegalAccessException, InstantiationException {
        blog.newPost(QuotePost.class);
        verify(client).newPost(name, QuotePost.class);
    }

    @Test
    public void testReaders() {
        assertEquals(description, blog.getDescription());
        assertEquals(ask, blog.canAsk());
        assertEquals(ask_anon, blog.canAskAnonymously());
        assertEquals(posts, blog.getPostCount());
        assertEquals(likes, blog.getLikeCount());
        assertEquals(updated, blog.getUpdated());
        assertEquals(title, blog.getTitle());
        assertEquals(name, blog.getName());
        assertEquals(followers, blog.getFollowersCount());
    }

    @Test
    public void avatar() {
        blog.avatar();
        verify(client).blogAvatar(name, null);

        blog.avatar(96);
        verify(client).blogAvatar(name, 96);
    }

    @Test
    public void followers() {
        blog.followers();
        verify(client).blogFollowers(name, null);

        Map<String, String> options = new HashMap<String, String>();
        blog.followers(options);
        verify(client).blogFollowers(name, options);
    }

    @Test
    public void posts() {
        blog.posts();
        verify(client).blogPosts(name, null);

        Map<String, String> options = new HashMap<String, String>();
        blog.posts(options);
        verify(client).blogPosts(name, options);
    }

    @Test
    public void getPost() {
        blog.getPost(42L);
        verify(client).blogPost(name, 42L);
    }

    @Test
    public void getLikedPosts() {
        blog.likedPosts();
        verify(client).blogLikes(name, null);

        Map<String, String> options = new HashMap<String, String>();
        blog.likedPosts(options);
        verify(client).blogLikes(name, options);
    }

    @Test
    public void getFollow() {
        blog.follow();
        verify(client).follow(name);
    }

    @Test
    public void getUnfollow() {
        blog.unfollow();
        verify(client).unfollow(name);
    }

    @Test
    public void queuedPosts() {
        blog.queuedPosts();
        verify(client).blogQueuedPosts(name, null);

        Map<String, String> options = new HashMap<String, String>();
        blog.queuedPosts(options);
        verify(client).blogQueuedPosts(name, options);
    }

    @Test
    public void draftPosts() {
        blog.draftPosts();
        verify(client).blogDraftPosts(name, null);

        Map<String, String> options = new HashMap<String, String>();
        blog.draftPosts(options);
        verify(client).blogDraftPosts(name, options);
    }

    @Test
    public void submissions() {
        blog.submissions();
        verify(client).blogSubmissions(name, null);

        Map<String, String> options = new HashMap<String, String>();
        blog.submissions(options);
        verify(client).blogSubmissions(name, options);
    }

}
TOP

Related Classes of com.tumblr.jumblr.types.BlogTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.