From: <fg...@us...> - 2013-11-02 10:06:04
|
Revision: 4446 http://openutils.svn.sourceforge.net/openutils/?rev=4446&view=rev Author: fgiust Date: 2013-11-02 10:06:01 +0000 (Sat, 02 Nov 2013) Log Message: ----------- tests converted to testng Modified Paths: -------------- magnoliamodules/trunk/openutils-mgnltagcloud/pom.xml magnoliamodules/trunk/openutils-mgnltagcloud/src/test/java/net/sourceforge/openutils/mgnltagcloud/manager/TagCloudManagerTest.java magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/repo-conf/jackrabbit-memory-search.xml Added Paths: ----------- magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.dtd magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.xml Modified: magnoliamodules/trunk/openutils-mgnltagcloud/pom.xml =================================================================== --- magnoliamodules/trunk/openutils-mgnltagcloud/pom.xml 2013-11-02 10:05:43 UTC (rev 4445) +++ magnoliamodules/trunk/openutils-mgnltagcloud/pom.xml 2013-11-02 10:06:01 UTC (rev 4446) @@ -235,10 +235,16 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>4.7</version> + <groupId>org.testng</groupId> + <artifactId>testng</artifactId> + <version>6.0.1</version> <scope>test</scope> + <exclusions> + <exclusion> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + </exclusion> + </exclusions> </dependency> </dependencies> <properties> Modified: magnoliamodules/trunk/openutils-mgnltagcloud/src/test/java/net/sourceforge/openutils/mgnltagcloud/manager/TagCloudManagerTest.java =================================================================== --- magnoliamodules/trunk/openutils-mgnltagcloud/src/test/java/net/sourceforge/openutils/mgnltagcloud/manager/TagCloudManagerTest.java 2013-11-02 10:05:43 UTC (rev 4445) +++ magnoliamodules/trunk/openutils-mgnltagcloud/src/test/java/net/sourceforge/openutils/mgnltagcloud/manager/TagCloudManagerTest.java 2013-11-02 10:06:01 UTC (rev 4446) @@ -19,18 +19,18 @@ package net.sourceforge.openutils.mgnltagcloud.manager; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotSame; -import static org.junit.Assert.fail; +import info.magnolia.cms.beans.config.ObservedManager; import info.magnolia.cms.core.MgnlNodeType; import info.magnolia.cms.core.Path; -import info.magnolia.cms.util.ClasspathResourcesUtil; +import info.magnolia.cms.util.ContentUtil; import info.magnolia.context.MgnlContext; import info.magnolia.jcr.util.NodeUtil; import info.magnolia.objectfactory.Components; import info.magnolia.repository.RepositoryConstants; import info.magnolia.test.ComponentsTestUtil; -import info.magnolia.test.RepositoryTestCase; +import it.openutils.mgnlutils.test.ModuleConfiguration; +import it.openutils.mgnlutils.test.RepositoryTestConfiguration; +import it.openutils.mgnlutils.test.TestNgRepositoryTestcase; import java.util.Map; import java.util.Set; @@ -40,24 +40,31 @@ import javax.jcr.Session; import javax.jcr.Value; +import net.sourceforge.openutils.mgnltagcloud.bean.TagCloud; import net.sourceforge.openutils.mgnltagcloud.el.TagCloudElFunctions; import net.sourceforge.openutils.mgnltagcloud.module.TagCloudModule; import net.sourceforge.openutils.mgnltagcloud.util.JackrabbitUtil; import org.apache.commons.lang.ArrayUtils; import org.apache.jackrabbit.value.ValueFactoryImpl; -import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; /** * @author cstrappazzon * @version $Id$ */ -public class TagCloudManagerTest extends RepositoryTestCase +@RepositoryTestConfiguration(repositoryConfig = "/utils-repository/test-repositories.xml", jackrabbitRepositoryConfig = "/repo-conf/jackrabbit-memory-search.xml", magnoliaProperties = "/test-magnolia.properties", startModules = {@ModuleConfiguration(name = "tagcloud", moduleclass = TagCloudModule.class) }) +public class TagCloudManagerTest extends TestNgRepositoryTestcase { + private static final String ObservedManager = null; + /** * Set list of tag values */ @@ -115,7 +122,7 @@ Map<String, Integer> tags = TagCloudElFunctions.notcached(RepositoryConstants.WEBSITE, pathList[0], "tags", 2); log.debug("Time: " + (System.currentTimeMillis() - time)); log.debug("PathMap freq: {}", tags); - assertEquals(nodesNumber, tags.get("tag1 tag4")); + Assert.assertEquals(nodesNumber, tags.get("tag1 tag4")); } /** @@ -128,12 +135,12 @@ Map<String, Integer> tags = TagCloudElFunctions.cached(RepositoryConstants.WEBSITE, pathList[1], "tags", 2); log.debug("Time: " + (System.currentTimeMillis() - time)); log.debug("tagCloud freq: {}", tags); - assertEquals(nodesNumber, tags.get("tag2")); + Assert.assertEquals(nodesNumber, tags.get("tag2")); time = System.currentTimeMillis(); tags = TagCloudElFunctions.cached(RepositoryConstants.WEBSITE, pathList[1], "tags", 2); log.debug("Time: " + (System.currentTimeMillis() - time)); log.debug("tagCloud freq: {}", tags); - assertEquals(nodesNumber, tags.get("tag1 tag4")); + Assert.assertEquals(nodesNumber, tags.get("tag1 tag4")); } /** @@ -147,7 +154,7 @@ log.debug("Tags: {}", tags); log.debug("Ordered Tags: {}", orderedTags); - assertNotSame(tags.keySet(), orderedTags.keySet()); + Assert.assertNotSame(tags.keySet(), orderedTags.keySet()); } /** @@ -161,9 +168,9 @@ Map<String, Integer> countedTags = TagCloudElFunctions.sortbycount(tags, false); log.debug("Tags: {}", countedTags); - assertNotSame(tags, countedTags); + Assert.assertNotSame(tags, countedTags); Set<String> listOrderedTag = countedTags.keySet(); - assertEquals("tag32", listOrderedTag.iterator().next().toString()); + Assert.assertEquals("tag32", listOrderedTag.iterator().next().toString()); } /** @@ -172,7 +179,15 @@ @Test public void testNamed() { - Map<String, Integer> tags = TagCloudElFunctions.named("cloud1"); + String cloudname = "cloud1"; + TagCloud tagCloud = Components.getComponent(TagCloudManager.class).getTagCloud(cloudname); + + if (tagCloud == null) + { + Assert.fail("Tagcloud " + cloudname + " not configured"); + } + + Map<String, Integer> tags = TagCloudElFunctions.named(cloudname); log.debug("Tags: {}", tags); try @@ -193,13 +208,13 @@ catch (InterruptedException e) { log.error("Interrupt exception", e); - fail(e.getMessage()); + Assert.fail(e.getMessage()); } - tags = TagCloudElFunctions.named("cloud1"); + tags = TagCloudElFunctions.named(cloudname); log.debug("Tags: {}", tags); - assertEquals(true, tags.containsKey("prova")); + Assert.assertEquals(true, tags.containsKey("prova")); } /** @@ -215,13 +230,17 @@ log.debug("Properties {}", mapProperties); - assertEquals(new Integer(5), mapProperties.get("count")); - assertEquals(tags.get("tag1 tag4"), mapProperties.get("max")); + Assert.assertEquals(new Integer(5), mapProperties.get("count")); + Assert.assertEquals(tags.get("tag1 tag4"), mapProperties.get("max")); } + @SuppressWarnings("deprecation") @Override + @BeforeClass public void setUp() throws Exception { + ComponentsTestUtil.setImplementation(TagCloudManager.class, DefaultTagCloudManager.class); + super.setUp(); session = MgnlContext.getInstance().getJCRSession(RepositoryConstants.WEBSITE); @@ -254,10 +273,10 @@ } session.save(); - Session hmConfig = MgnlContext.getInstance().getJCRSession(RepositoryConstants.CONFIG); + Session configsession = MgnlContext.getInstance().getJCRSession(RepositoryConstants.CONFIG); Node contentTagcloud = NodeUtil.createPath( session.getNode("/"), - Path.getValidatedLabel("clouds"), + "/modules/tagcloud/clouds", MgnlNodeType.NT_CONTENT); Node contentCloud = NodeUtil.createPath( @@ -271,35 +290,23 @@ contentCloud.setProperty("enabled", ValueFactoryImpl.getInstance().createValue(true)); contentCloud.setProperty("count", ValueFactoryImpl.getInstance().createValue(50)); - hmConfig.save(); + configsession.save(); - ComponentsTestUtil.setImplementation(TagCloudManager.class, DefaultTagCloudManager.class); DefaultTagCloudManager manager = (DefaultTagCloudManager) Components.getComponent(TagCloudManager.class); manager.jackrabbitUtil = new JackrabbitUtil(); manager.onRegister(contentCloud); + + ObservedManager tagCloudManager = (ObservedManager) Components.getComponent(TagCloudManager.class); + tagCloudManager.register(ContentUtil.asContent(contentTagcloud.getParent())); } @Override + @AfterClass public void tearDown() throws Exception { - ComponentsTestUtil.setImplementation(TagCloudManager.class, DefaultTagCloudManager.class); Components.getComponent(TagCloudManager.class).stopObserving(); super.tearDown(); } - /** - * {@inheritDoc} - */ - @Override - protected void startRepository() throws Exception - { - extractConfigFile( - "magnolia.indexingConfiguration", - ClasspathResourcesUtil.getResource("/indexing_configuration.xml").openStream(), - "target/repositories/magnolia/indexing_configuration.xml"); - - super.startRepository(); - } - } \ No newline at end of file Added: magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.dtd =================================================================== --- magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.dtd (rev 0) +++ magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.dtd 2013-11-02 10:06:01 UTC (rev 4446) @@ -0,0 +1,166 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<!-- Authors: Chris Taylor, Ceki Gulcu. --> + +<!-- Version: 1.2 --> + +<!-- A configuration element consists of optional renderer +elements,appender elements, categories and an optional root +element. --> + +<!ELEMENT log4j:configuration (renderer*, appender*,(category|logger)*,root?, + categoryFactory?)> + +<!-- The "threshold" attribute takes a level value such that all --> +<!-- logging statements with a level equal or below this value are --> +<!-- disabled. --> + +<!-- Setting the "debug" enable the printing of internal log4j logging --> +<!-- statements. --> + +<!-- By default, debug attribute is "null", meaning that we not do touch --> +<!-- internal log4j logging settings. The "null" value for the threshold --> +<!-- attribute can be misleading. The threshold field of a repository --> +<!-- cannot be set to null. The "null" value for the threshold attribute --> +<!-- simply means don't touch the threshold field, the threshold field --> +<!-- keeps its old value. --> + +<!ATTLIST log4j:configuration + xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/" + threshold (all|debug|info|warn|error|fatal|off|null) "null" + debug (true|false|null) "null" +> + +<!-- renderer elements allow the user to customize the conversion of --> +<!-- message objects to String. --> + +<!ELEMENT renderer EMPTY> +<!ATTLIST renderer + renderedClass CDATA #REQUIRED + renderingClass CDATA #REQUIRED +> + +<!-- Appenders must have a name and a class. --> +<!-- Appenders may contain an error handler, a layout, optional parameters --> +<!-- and filters. They may also reference (or include) other appenders. --> +<!ELEMENT appender (errorHandler?, param*, layout?, filter*, appender-ref*)> +<!ATTLIST appender + name ID #REQUIRED + class CDATA #REQUIRED +> + +<!ELEMENT layout (param*)> +<!ATTLIST layout + class CDATA #REQUIRED +> + +<!ELEMENT filter (param*)> +<!ATTLIST filter + class CDATA #REQUIRED +> + +<!-- ErrorHandlers can be of any class. They can admit any number of --> +<!-- parameters. --> + +<!ELEMENT errorHandler (param*, root-ref?, logger-ref*, appender-ref?)> +<!ATTLIST errorHandler + class CDATA #REQUIRED +> + +<!ELEMENT root-ref EMPTY> + +<!ELEMENT logger-ref EMPTY> +<!ATTLIST logger-ref + ref IDREF #REQUIRED +> + +<!ELEMENT param EMPTY> +<!ATTLIST param + name CDATA #REQUIRED + value CDATA #REQUIRED +> + + +<!-- The priority class is org.apache.log4j.Level by default --> +<!ELEMENT priority (param*)> +<!ATTLIST priority + class CDATA #IMPLIED + value CDATA #REQUIRED +> + +<!-- The level class is org.apache.log4j.Level by default --> +<!ELEMENT level (param*)> +<!ATTLIST level + class CDATA #IMPLIED + value CDATA #REQUIRED +> + + +<!-- If no level element is specified, then the configurator MUST not --> +<!-- touch the level of the named category. --> +<!ELEMENT category (param*,(priority|level)?,appender-ref*)> +<!ATTLIST category + class CDATA #IMPLIED + name CDATA #REQUIRED + additivity (true|false) "true" +> + +<!-- If no level element is specified, then the configurator MUST not --> +<!-- touch the level of the named logger. --> +<!ELEMENT logger (level?,appender-ref*)> +<!ATTLIST logger + name ID #REQUIRED + additivity (true|false) "true" +> + + +<!ELEMENT categoryFactory (param*)> +<!ATTLIST categoryFactory + class CDATA #REQUIRED> + +<!ELEMENT appender-ref EMPTY> +<!ATTLIST appender-ref + ref IDREF #REQUIRED +> + +<!-- If no priority element is specified, then the configurator MUST not --> +<!-- touch the priority of root. --> +<!-- The root category always exists and cannot be subclassed. --> +<!ELEMENT root (param*, (priority|level)?, appender-ref*)> + + +<!-- ==================================================================== --> +<!-- A logging event --> +<!-- ==================================================================== --> +<!ELEMENT log4j:eventSet (log4j:event*)> +<!ATTLIST log4j:eventSet + xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/" + version (1.1|1.2) "1.2" + includesLocationInfo (true|false) "true" +> + + + +<!ELEMENT log4j:event (log4j:message, log4j:NDC?, log4j:throwable?, + log4j:locationInfo?) > + +<!-- The timestamp format is application dependent. --> +<!ATTLIST log4j:event + logger CDATA #REQUIRED + level CDATA #REQUIRED + thread CDATA #REQUIRED + timestamp CDATA #REQUIRED +> + +<!ELEMENT log4j:message (#PCDATA)> +<!ELEMENT log4j:NDC (#PCDATA)> + +<!ELEMENT log4j:throwable (#PCDATA)> + +<!ELEMENT log4j:locationInfo EMPTY> +<!ATTLIST log4j:locationInfo + class CDATA #REQUIRED + method CDATA #REQUIRED + file CDATA #REQUIRED + line CDATA #REQUIRED +> Property changes on: magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.dtd ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/xml \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.xml =================================================================== --- magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.xml (rev 0) +++ magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.xml 2013-11-02 10:06:01 UTC (rev 4446) @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> +<log4j:configuration> + <!-- log4j test configuration --> + <appender name="test-appender" class="org.apache.log4j.ConsoleAppender"> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%-5p %c.%M(%C{1}.java:%L) %m%n" /> + </layout> + </appender> + <category name="jdbc"> + <priority value="WARN" /> + </category> + <category name="it"> + <priority value="INFO" /> + </category> + <category name="info"> + <priority value="INFO" /> + </category> + <category name="org"> + <priority value="WARN" /> + </category> + <category name="com"> + <priority value="WARN" /> + </category> + <category name="net"> + <priority value="WARN" /> + </category> + <category name="org.dbunit"> + <priority value="WARN" /> + </category> + <category name="score"> + <priority value="INFO" /> + </category> + <category name="it"> + <priority value="INFO" /> + </category> + <category name="net.sourceforge.openutils.mgnltagcloud"> + <priority value="DEBUG" /> + </category> + <root> + <priority value="ALL" /> + <appender-ref ref="test-appender" /> + </root> +</log4j:configuration> \ No newline at end of file Property changes on: magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/log4j.xml ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/xml \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Author Date Id Revision \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Modified: magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/repo-conf/jackrabbit-memory-search.xml =================================================================== --- magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/repo-conf/jackrabbit-memory-search.xml 2013-11-02 10:05:43 UTC (rev 4445) +++ magnoliamodules/trunk/openutils-mgnltagcloud/src/test/resources/repo-conf/jackrabbit-memory-search.xml 2013-11-02 10:06:01 UTC (rev 4446) @@ -19,7 +19,7 @@ <param name="blobFSBlockSize" value="1" /><!-- store in memory --> </PersistenceManager> <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex"> - <param name="indexingConfiguration" value="${rep.home}/indexing_configuration.xml" /> + <param name="indexingConfiguration" value="/indexing_configuration.xml" /> <param name="path" value="${wsp.home}/index" /> <param name="useCompoundFile" value="true" /> <param name="minMergeDocs" value="100" /> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |