package net.dev123.mblog; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import java.util.List; import net.dev123.commons.util.ListUtil; import net.dev123.entity.StatusUpdate; import net.dev123.exception.ExceptionCode; import net.dev123.exception.LibException; import net.dev123.mblog.entity.Comment; import net.dev123.mblog.entity.ResponseCount; import net.dev123.mblog.entity.Status; import net.dev123.mblog.entity.UnreadCount; import net.dev123.mblog.entity.UnreadType; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; //已经完成基本的测试用例 //@Ignore public class CountMethods { private static MicroBlog mBlog = null; @BeforeClass public static void beforClass() { mBlog = Config.getMicroBlog(Config.currentProvider); } @AfterClass public static void afterClass() { } @Test public void getResponseCount() { try { String text = "测试接口:getResponseCount,造原数据," + System.currentTimeMillis(); StatusUpdate sUpdate = new StatusUpdate(text); Status status = mBlog.updateStatus(sUpdate); assertTrue(status != null); TestUtil.sleep(); ResponseCount count = null; count = mBlog.getResponseCount(status); assertNotNull(count); assertTrue(count.getCommentsCount() == 0 && count.getRetweetCount() == 0); String retweetText = "测试接口:getResponseCount,造转发数据" + System.currentTimeMillis(); boolean isComment = false; Status retweetStatus = mBlog.retweetStatus(status.getId(), retweetText, isComment); assertNotNull(retweetStatus); TestUtil.sleep(); count = mBlog.getResponseCount(status); assertNotNull(count); assertTrue(count.getCommentsCount() == 0 && count.getRetweetCount() == 1); //评论 String commentText = "测试接口:getResponseCount,造评论数据!" + System.currentTimeMillis(); Comment comment = mBlog.createComment(commentText, status.getId()); assertTrue(comment != null); TestUtil.sleep(); count = mBlog.getResponseCount(status); assertNotNull(count); assertTrue(count.getCommentsCount() == 1 && count.getRetweetCount() == 1); } catch (LibException e) { e.printStackTrace(); assertTrue(false); } } @Test public void getResponseCountList() { try { List<Status> listStatus = null; listStatus = mBlog.getPublicTimeline(); assertTrue(ListUtil.isNotEmpty(listStatus)); List<ResponseCount> listCount = mBlog.getResponseCountList(listStatus); assertTrue(ListUtil.isNotEmpty(listCount)); for (ResponseCount count : listCount) { assertNotNull(count); assertTrue(count.getCommentsCount()>= 0 && count.getRetweetCount() >= 0); } } catch (LibException e) { if (e.getExceptionCode() != ExceptionCode.UNSUPPORTED_API) { assertTrue(false); e.printStackTrace(); } } } @Test public void getUnreadCount() { try { UnreadCount count = mBlog.getUnreadCount(); assertNotNull(count); assertTrue(count.getCommentCount() >= 0); assertTrue(count.getDireceMessageCount() >= 0); assertTrue(count.getFollowerCount() >= 0); assertTrue(count.getMetionCount() >= 0); assertTrue(count.getStatusCount() >= 0); } catch (LibException e) { if (e.getExceptionCode() != ExceptionCode.UNSUPPORTED_API) { e.printStackTrace(); assertTrue(false); } } } @Test public void resetUnreadCount() { try { Boolean isSuccess = mBlog.resetUnreadCount(UnreadType.COMMENT); assertTrue(isSuccess); isSuccess = mBlog.resetUnreadCount(UnreadType.DIRECT_MESSAGE); assertTrue(isSuccess); isSuccess = mBlog.resetUnreadCount(UnreadType.FOLLOWER); assertTrue(isSuccess); isSuccess = mBlog.resetUnreadCount(UnreadType.METION); assertTrue(isSuccess); } catch (LibException e) { if (e.getExceptionCode() != ExceptionCode.UNSUPPORTED_API) { e.printStackTrace(); assertTrue(false); } } } }