@Test public void testGetKBFoldersAndKBArticlesOrderedByDescendingViewCount() throws Exception { KBArticle kbArticle1 = addKBArticle(KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, "A"); KBArticle kbArticle2 = addKBArticle(KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, "B"); KBArticle kbArticle3 = addKBArticle(KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, "C"); KBArticleLocalServiceUtil.updateViewCount( kbArticle2.getUserId(), kbArticle2.getResourcePrimKey(), kbArticle2.getViewCount() + 1000); List<Object> kbFolderAndKBArticles = KBFolderLocalServiceUtil.getKBFoldersAndKBArticles( _group.getGroupId(), KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, WorkflowConstants.STATUS_ANY, QueryUtil.ALL_POS, QueryUtil.ALL_POS, new KBObjectsViewCountComparator(false)); KBFolder currentKBFolder = (KBFolder) kbFolderAndKBArticles.get(0); KBArticle currentKBArticle1 = (KBArticle) kbFolderAndKBArticles.get(2); KBArticle currentKBArticle2 = (KBArticle) kbFolderAndKBArticles.get(1); KBArticle currentKBArticle3 = (KBArticle) kbFolderAndKBArticles.get(3); Assert.assertEquals(_kbFolder.getKbFolderId(), currentKBFolder.getKbFolderId()); Assert.assertEquals(kbArticle1.getKbArticleId(), currentKBArticle1.getKbArticleId()); Assert.assertEquals(kbArticle2.getKbArticleId(), currentKBArticle2.getKbArticleId()); Assert.assertEquals(kbArticle3.getKbArticleId(), currentKBArticle3.getKbArticleId()); }
@Test public void testGetKBFoldersAndKBArticlesOrderedByAscendingPriority() throws Exception { KBArticle kbArticle1 = addKBArticle(KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, RandomTestUtil.randomString()); KBArticle kbArticle2 = addKBArticle(KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, RandomTestUtil.randomString()); KBArticle kbArticle3 = addKBArticle(KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, RandomTestUtil.randomString()); KBArticleLocalServiceUtil.updatePriority(kbArticle2.getResourcePrimKey(), 10.0); List<Object> kbFolderAndKBArticles = KBFolderLocalServiceUtil.getKBFoldersAndKBArticles( _group.getGroupId(), KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, WorkflowConstants.STATUS_ANY, QueryUtil.ALL_POS, QueryUtil.ALL_POS, new KBObjectsPriorityComparator(true)); KBFolder currentKBFolder = (KBFolder) kbFolderAndKBArticles.get(0); KBArticle currentKBArticle1 = (KBArticle) kbFolderAndKBArticles.get(1); KBArticle currentKBArticle2 = (KBArticle) kbFolderAndKBArticles.get(3); KBArticle currentKBArticle3 = (KBArticle) kbFolderAndKBArticles.get(2); Assert.assertEquals(_kbFolder.getKbFolderId(), currentKBFolder.getKbFolderId()); Assert.assertEquals(kbArticle1.getKbArticleId(), currentKBArticle1.getKbArticleId()); Assert.assertEquals(kbArticle2.getKbArticleId(), currentKBArticle2.getKbArticleId()); Assert.assertEquals(kbArticle3.getKbArticleId(), currentKBArticle3.getKbArticleId()); }
protected KBArticle updateKBArticle(KBArticle kbArticle, String title) throws Exception { ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group, _user.getUserId()); return KBArticleLocalServiceUtil.updateKBArticle( kbArticle.getUserId(), kbArticle.getResourcePrimKey(), title, kbArticle.getContent(), kbArticle.getDescription(), kbArticle.getSourceURL(), null, new String[0], new long[0], serviceContext); }
protected KBArticle addKBArticle(long parentKbFolderId, String title) throws Exception { ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group, _user.getUserId()); return KBArticleLocalServiceUtil.addKBArticle( _user.getUserId(), PortalUtil.getClassNameId(KBFolderConstants.getClassName()), parentKbFolderId, title, title, RandomTestUtil.randomString(), RandomTestUtil.randomString(), null, new String[0], new String[0], serviceContext); }
protected KBArticle addChildKBArticle(KBArticle kbArticle, String title) throws Exception { ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group, _user.getUserId()); return KBArticleLocalServiceUtil.addKBArticle( _user.getUserId(), PortalUtil.getClassNameId(KBArticleConstants.getClassName()), kbArticle.getResourcePrimKey(), title, title, RandomTestUtil.randomString(), RandomTestUtil.randomString(), null, new String[0], new String[0], serviceContext); }