package com.usemodj.forum; import static org.junit.Assert.*; import java.util.List; import java.util.Map; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import com.usemodj.forum.domain.Forum; import com.usemodj.forum.mybatis.builder.ForumMybatisConfig; import com.usemodj.forum.service.ForumService; public class ForumsHierarchicalTest { private static SqlSessionFactory sqlSessionFactory; private static ForumService forumService; @BeforeClass public static void setup() throws Exception { sqlSessionFactory = new ForumMybatisConfig().getSqlSessionFactory(); forumService = new ForumService(); } @Test public void testGetForumsHierarchical() { fail("Not yet implemented"); } @Test public void testGetForumsMap() { SqlSession sqlSession = null; try { sqlSession = sqlSessionFactory.openSession(); Map<Long, Forum> forums = forumService.getForumsWithMetaMap(sqlSession); System.out.println(" --- forums size: "+ forums.size()); for( long k : forums.keySet()) { Forum f = forums.get( k); System.out.println("-- [ " + k + "], forumId: "+ f.getForumId()+", parent: "+ f.getForumParent()+ ", forumName: "+ f.getForumName() + ", forumOrder: "+ f.getForumOrder()); System.out.println(" -- Metas: "+ f.getMetas().toString()); } ForumsHierarchical fh = new ForumsHierarchical(); int childOf =0; int hierarchical = 1; int depth = 0; int cutBranch = 0; Map<Long, Forum> forumsMap = fh.getForumsMap( forums, childOf, hierarchical, depth, cutBranch); for(long k : forumsMap.keySet()) { Forum f = (Forum)forumsMap.get( k); if( null != f) { System.out.println("-- [ " + k + "], forumId: "+ f.getForumId()+", forumParent: "+ f.getForumParent()+ ", forumName: "+ f.getForumName() + ", forumOrder: "+ f.getForumOrder()); System.out.println(" -- Metas: "+ f.getMetas().toString()); } } } catch (Exception e) { e.printStackTrace(); } finally { sqlSession.close(); } } @Test public void testGetFlattenMap() { fail("Not yet implemented"); } @Test public void testForumsLoopStep() { SqlSession sqlSession = null; try { sqlSession = sqlSessionFactory.openSession(); Map<Long, Forum> forums = forumService.getForumsWithMetaMap(sqlSession); System.out.println(" --- forums size: "+ forums.size()); for( long k : forums.keySet()) { Forum f = forums.get( k); System.out.println("-- [ " + k + "], forumId: "+ f.getForumId()+", parent: "+ f.getForumParent()+ ", forumName: "+ f.getForumName() + ", forumOrder: "+ f.getForumOrder()); System.out.println(" -- Metas: "+ f.getMetas().toString()); } ForumsHierarchical fh = new ForumsHierarchical(); //int childOf =0; int childOf =4; //forum_id int hierarchical = 1; int depth = 0; int cutBranch = 0; Map<Long, Forum> forumsMap = fh.getForumsMap( forums, childOf, hierarchical, depth, cutBranch); if( null != forumsMap) for(long k : forumsMap.keySet()) { Forum f = (Forum)forumsMap.get( k); //if( null != f) { System.out.println("== [ " + k + "], forumId: "+ f.getForumId()+ ", forumName: "+ f.getForumName() + ", forumOrder: "+ f.getForumOrder()); System.out.println(" -- Metas: "+ f.getMetas().toString()); //}forumsLoop } if( null != fh.getForumsLoopElements(forumsMap)) { while( fh.forumsLoopStep() > 0) { //System.out.println(" -- forumId: "+ fh.forum.getForumId() + ", forumName: "+ fh.forum.getForumName()); if( fh.isForumIsCategory()) { //if( null != fh.forum.getMeta() && "forum_is_category".equals( fh.forum.getMeta().getMetaKey()) && "1".equals(fh.forum.getMeta().getMetaValue() ) ) { System.out.println( fh.getAltClass( "forum", fh.getForumClass("bb-category"))); System.out.println( fh.forumsLoop.pad("<div class='nest'>" , 0) + fh.forum.getForumName() + fh.forumsLoop.pad("</div>", 0)); continue; } System.out.println( fh.getAltClass( "forum", fh.getForumClass(null))); System.out.println( fh.forumsLoop.pad("<div class='nest'>" , 0) + fh.forum.getForumName() + fh.forumsLoop.pad("</div>", 0)); } } } catch (Exception e) { e.printStackTrace(); } finally { sqlSession.close(); } } }