/* * Weblounge: Web Content Management System * Copyright (c) 2003 - 2011 The Weblounge Team * http://entwinemedia.com/weblounge * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program; if not, write to the Free Software Foundation * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ package ch.entwine.weblounge.common.impl.content; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import ch.entwine.weblounge.common.content.SearchResultItem; import ch.entwine.weblounge.common.content.page.PageletRenderer; import ch.entwine.weblounge.common.impl.content.page.PageletRendererImpl; import ch.entwine.weblounge.common.impl.url.WebUrlImpl; import ch.entwine.weblounge.common.site.Site; import ch.entwine.weblounge.common.url.WebUrl; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; /** * Test case for {@link SearchResultItemImpl}. */ public class SearchResultItemImplTest { /** The search result item */ protected SearchResultItemImpl item = null; /** The relevance */ protected double relevance = 0.5d; /** The preview data */ protected Object previewData = null; /** THe pagelet renderer */ protected PageletRenderer renderer = null; /** The source for this result item */ protected Object source = null; /** The result title */ protected String title = null; /** The page id */ protected String id = null; /** The page path */ protected String path = "/service/test"; /** The url of the search result */ protected WebUrl url = null; /** The mock site */ protected Site site = null; /** * Setup for the test. * * @throws java.lang.Exception */ @Before public void setUp() throws Exception { setUpPrerequisites(); item = new SearchResultItemImpl(id, site, url, relevance, source); item.setTitle(title); item.setPreview(previewData); item.setPreviewRenderer(renderer); } /** * Sets up data that is used by the setUp() method. */ protected void setUpPrerequisites() { previewData = new Object(); renderer = new PageletRendererImpl("id"); source = new Object(); title = "My search result"; site = EasyMock.createNiceMock(Site.class); EasyMock.replay(site); url = new WebUrlImpl(site, path); } /** * Test method for {@link ch.entwine.weblounge.common.impl.content.SearchResultItemImpl#getTitle()}. */ @Test public void testGetTitle() { assertEquals(title, item.getTitle()); } /** * Test method for {@link ch.entwine.weblounge.common.impl.content.SearchResultItemImpl#getUrl()}. */ @Test public void testGetUrl() { assertEquals(url, item.getUrl()); } /** * Test method for {@link ch.entwine.weblounge.common.impl.content.SearchResultItemImpl#getContent()}. */ @Test public void testGetPreview() { assertEquals(previewData, item.getContent()); } /** * Test method for {@link ch.entwine.weblounge.common.impl.content.SearchResultItemImpl#getPreviewRenderer()}. */ @Test public void testGetPreviewRenderer() { assertEquals(renderer, item.getPreviewRenderer()); } /** * Test method for {@link ch.entwine.weblounge.common.impl.content.SearchResultItemImpl#getRelevance()}. */ @Test public void testGetRelevance() { assertEquals(relevance, item.getRelevance(), 0.0f); } /** * Test method for {@link ch.entwine.weblounge.common.impl.content.SearchResultItemImpl#getSource()}. */ @Test public void testGetSource() { assertEquals(source, item.getSource()); } /** * Test method for {@link ch.entwine.weblounge.common.impl.content.SearchResultItemImpl#compareTo(ch.entwine.weblounge.common.content.SearchResultItem)}. */ @Test public void testCompareToSearchResultItem() { SearchResultItem nextItem = new SearchResultItemImpl(id, site, url, relevance + 1.0, source); assertTrue(item.compareTo(nextItem) > 0); } }