package com.cattong.weibo; import static org.junit.Assert.assertTrue; import java.lang.reflect.Method; import java.util.List; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; import com.cattong.commons.LibException; import com.cattong.commons.Paging; import com.cattong.commons.http.auth.Authorization; import com.cattong.commons.util.ListUtil; import com.cattong.entity.Status; import com.cattong.entity.User; import com.cattong.oauth.Config; //已经完成基本的测试用例 //@Ignore public class TimelineMethods { private static Weibo weibo = null; @BeforeClass public static void beforClass() { Authorization auth = new Authorization(Config.SP); auth.setAccessToken(Config.ACCESS_TOKEN); auth.setAccessSecret(Config.ACCESS_SECRET); weibo = WeiboFactory.getInstance(auth); } @AfterClass public static void afterClass() { } //翻页:单向(SigleStyle) @Test public void getPublicTimeline() { List<Status> listStatus = null; try { listStatus = weibo.getPublicTimeline(); } catch (LibException e) { e.printStackTrace(); } assertTrue(ListUtil.isNotEmpty(listStatus)); } //翻页:自由方式(FreeStyle) @Test public void getHomeTimeline() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); try { listStatus = weibo.getHomeTimeline(paging); } catch (LibException e) { e.printStackTrace(); assertTrue(false); } assertTrue(ListUtil.isNotEmpty(listStatus)); } @Test public void getHomeTimeline_params() { try { weibo.getHomeTimeline(null); assertTrue(false); } catch (LibException e) { assertTrue(true); } } @Test public void getHomeTimeline_paging() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); try { listStatus = weibo.getHomeTimeline(paging); } catch (LibException e) { e.printStackTrace(); } if (ListUtil.isEmpty(listStatus) || listStatus.size() < 6) { assertTrue(false); } Method method = null; try { method = Weibo.class.getMethod("getHomeTimeline", Paging.class); } catch (SecurityException e1) { e1.printStackTrace(); assertTrue(false); } catch (NoSuchMethodException e1) { e1.printStackTrace(); assertTrue(false); } //测试上翻 PagingTest.pageUp(listStatus, weibo, method); //测试下翻 PagingTest.pageDown(listStatus, weibo, method); //测试中间展开 PagingTest.pageExpand(listStatus, weibo, method); } //翻页:自由方式(FreeStyle) @Test public void getFriendsTimeline() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); try { listStatus = weibo.getFriendsTimeline(paging); } catch (LibException e) { e.printStackTrace(); } assertTrue(ListUtil.isNotEmpty(listStatus)); } @Test public void getFriendsTimeline_params() { try { weibo.getFriendsTimeline(null); assertTrue(false); } catch (LibException e) { assertTrue(true); } } @Test public void getFriendsTimeline_paging() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); try { listStatus = weibo.getFriendsTimeline(paging); } catch (LibException e) { e.printStackTrace(); } if (ListUtil.isEmpty(listStatus) || listStatus.size() < 6) { assertTrue(false); } Method method = null; try { method = Weibo.class.getMethod("getFriendsTimeline", Paging.class); } catch (SecurityException e1) { e1.printStackTrace(); assertTrue(false); } catch (NoSuchMethodException e1) { e1.printStackTrace(); assertTrue(false); } //测试上翻 PagingTest.pageUp(listStatus, weibo, method); //测试下翻 PagingTest.pageDown(listStatus, weibo, method); //测试中间展开 PagingTest.pageExpand(listStatus, weibo, method); } //翻页:单向方式(SingleStyle) @Test public void getUserTimeline() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); try { User user = weibo.verifyCredentials(); listStatus = weibo.getUserTimeline(user.getUserId(), paging); } catch (LibException e) { e.printStackTrace(); } assertTrue(ListUtil.isNotEmpty(listStatus)); } @Test public void getUserTimeline_params() { try { weibo.getUserTimeline(null, null); assertTrue(false); } catch (LibException e) { assertTrue(true); } } @Test public void getUserTimeline_paging() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); User user = null; try { user = weibo.verifyCredentials(); listStatus = weibo.getUserTimeline(user.getUserId(), paging); } catch (LibException e) { e.printStackTrace(); } if (ListUtil.isEmpty(listStatus) || listStatus.size() < 6) { assertTrue(false); } Method method = null; try { method = Weibo.class.getMethod("getUserTimeline", String.class, Paging.class); } catch (SecurityException e1) { e1.printStackTrace(); assertTrue(false); } catch (NoSuchMethodException e1) { e1.printStackTrace(); assertTrue(false); } //测试下翻 PagingTest.pageDown(listStatus, weibo, method, user.getUserId()); } //翻页:自由方式(FreeStyle) @Test public void getMentions() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); try { listStatus = weibo.getMentionTimeline(paging); } catch (LibException e) { e.printStackTrace(); assertTrue(false); } assertTrue(ListUtil.isNotEmpty(listStatus)); } @Test public void getMentions_params() { try { weibo.getMentionTimeline(null); assertTrue(false); } catch (LibException e) { assertTrue(true); } } @Test public void getMentions_paging() { List<Status> listStatus = null; Paging<Status> paging = new Paging<Status>(); try { listStatus = weibo.getMentionTimeline(paging); } catch (LibException e) { e.printStackTrace(); } if (ListUtil.isEmpty(listStatus) || listStatus.size() < 6) { assertTrue(false); } Method method = null; try { method = Weibo.class.getMethod("getMentions", Paging.class); } catch (SecurityException e1) { e1.printStackTrace(); assertTrue(false); } catch (NoSuchMethodException e1) { e1.printStackTrace(); assertTrue(false); } //测试上翻 PagingTest.pageUp(listStatus, weibo, method); //测试下翻 PagingTest.pageDown(listStatus, weibo, method); //测试中间展开 PagingTest.pageExpand(listStatus, weibo, method); } }