You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by er...@apache.org on 2010/12/19 16:57:14 UTC
svn commit: r1050883 - in /ofbiz/trunk/applications/content: build.xml
ofbiz-component.xml src/org/ofbiz/content/test/
src/org/ofbiz/content/test/LuceneTests.java testdef/ testdef/data/
testdef/data/LuceneTestsData.xml testdef/lucenetests.xml
Author: erwan
Date: Sun Dec 19 15:57:13 2010
New Revision: 1050883
URL: http://svn.apache.org/viewvc?rev=1050883&view=rev
Log:
Adding test and test data for lucene search
Added:
ofbiz/trunk/applications/content/src/org/ofbiz/content/test/
ofbiz/trunk/applications/content/src/org/ofbiz/content/test/LuceneTests.java
ofbiz/trunk/applications/content/testdef/
ofbiz/trunk/applications/content/testdef/data/
ofbiz/trunk/applications/content/testdef/data/LuceneTestsData.xml
ofbiz/trunk/applications/content/testdef/lucenetests.xml
Modified:
ofbiz/trunk/applications/content/build.xml
ofbiz/trunk/applications/content/ofbiz-component.xml
Modified: ofbiz/trunk/applications/content/build.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/build.xml?rev=1050883&r1=1050882&r2=1050883&view=diff
==============================================================================
--- ofbiz/trunk/applications/content/build.xml (original)
+++ ofbiz/trunk/applications/content/build.xml Sun Dec 19 15:57:13 2010
@@ -54,4 +54,9 @@ under the License.
<exclude name="org/ofbiz/content/report/JRMapCollectionDataSource.java"/>
<exclude name="org/ofbiz/content/openoffice/*.java"/>
</patternset>
+
+ <target name="jar" depends="classes">
+ <main-jar/>
+ <test-jar/>
+ </target>
</project>
Modified: ofbiz/trunk/applications/content/ofbiz-component.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/ofbiz-component.xml?rev=1050883&r1=1050882&r2=1050883&view=diff
==============================================================================
--- ofbiz/trunk/applications/content/ofbiz-component.xml (original)
+++ ofbiz/trunk/applications/content/ofbiz-component.xml Sun Dec 19 15:57:13 2010
@@ -64,6 +64,9 @@ under the License.
<service-resource type="model" loader="main" location="servicedef/services_website.xml"/>
<service-resource type="eca" loader="main" location="servicedef/secas.xml"/>
<service-resource type="mca" loader="main" location="servicedef/mca.xml"/>
+
+ <test-suite loader="main" location="testdef/lucenetests.xml"/>
+
<webapp name="content"
title="Content"
server="default-server"
Added: ofbiz/trunk/applications/content/src/org/ofbiz/content/test/LuceneTests.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/src/org/ofbiz/content/test/LuceneTests.java?rev=1050883&view=auto
==============================================================================
--- ofbiz/trunk/applications/content/src/org/ofbiz/content/test/LuceneTests.java (added)
+++ ofbiz/trunk/applications/content/src/org/ofbiz/content/test/LuceneTests.java Sun Dec 19 15:57:13 2010
@@ -0,0 +1,88 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+
+package org.ofbiz.content.test;
+
+import javolution.util.FastMap;
+import org.apache.lucene.analysis.Analyzer;
+import org.apache.lucene.analysis.standard.StandardAnalyzer;
+import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.Term;
+import org.apache.lucene.queryParser.QueryParser;
+import org.apache.lucene.search.*;
+import org.apache.lucene.store.FSDirectory;
+import org.apache.lucene.util.Version;
+import org.ofbiz.base.util.Debug;
+import org.ofbiz.base.util.UtilMisc;
+import org.ofbiz.content.search.SearchWorker;
+import org.ofbiz.entity.GenericValue;
+import org.ofbiz.service.testtools.OFBizTestCase;
+
+import java.io.File;
+import java.util.List;
+import java.util.Map;
+
+public class LuceneTests extends OFBizTestCase {
+
+ protected GenericValue userLogin = null;
+
+ public LuceneTests(String name) {
+ super(name);
+ }
+
+ @Override
+ protected void setUp() throws Exception {
+ userLogin = delegator.findByPrimaryKey("UserLogin", UtilMisc.toMap("userLoginId", "system"));
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ //destruction index
+ }
+
+ public void testCreateIndex() throws Exception {
+ Map ctx = FastMap.newInstance();
+ ctx.put("contentId", "WebStoreCONTENT");
+ ctx.put("userLogin", userLogin);
+ Map resp = dispatcher.runSync("indexTree", ctx);
+
+ assertEquals(7, resp.get("goodIndexCount"));
+
+ List<String> badIndexList = (List<String>) resp.get("badIndexList");
+ assertEquals(8, badIndexList.size());
+ }
+
+ public void testSearchTermHand() throws Exception {
+ BooleanQuery combQuery = new BooleanQuery();
+ String queryLine = "hand";
+ IndexReader reader = IndexReader.open(FSDirectory.open(new File(SearchWorker.getIndexPath(null))), true);
+
+ Searcher searcher = new IndexSearcher(reader);
+ Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_30);
+
+ QueryParser parser = new QueryParser(Version.LUCENE_30, "content", analyzer);
+ Query query = parser.parse(queryLine);
+ combQuery.add(query, BooleanClause.Occur.MUST);
+
+ TopScoreDocCollector collector = TopScoreDocCollector.create(10, false);
+ searcher.search(combQuery, collector);
+
+ assertEquals("Only 1 result expected from the testdata", 1, collector.getTotalHits());
+ }
+}
Added: ofbiz/trunk/applications/content/testdef/data/LuceneTestsData.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/testdef/data/LuceneTestsData.xml?rev=1050883&view=auto
==============================================================================
--- ofbiz/trunk/applications/content/testdef/data/LuceneTestsData.xml (added)
+++ ofbiz/trunk/applications/content/testdef/data/LuceneTestsData.xml Sun Dec 19 15:57:13 2010
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<entity-engine-xml>
+ <DataResource dataResourceId="CNTGIZMOSLRG" dataResourceTypeId="ELECTRONIC_TEXT" mimeTypeId="text/html" localeString="en_US" isPublic="Y" dataResourceName="Large Gizmos"/>
+ <ElectronicText dataResourceId="CNTGIZMOSLRG">
+ <textData><![CDATA[
+ <div class="tabletext">
+ <ol>
+ <li>Large Gizmos are for those who loves them large!</li>
+ <li>A lot of them and more to come</li>
+ </ol>
+ </div>
+ ]]></textData>
+ </ElectronicText>
+ <DataResource dataResourceId="CNTGIZMOSSML" dataResourceTypeId="ELECTRONIC_TEXT" mimeTypeId="text/html" localeString="en_US" isPublic="Y" dataResourceName="Small Gizmos"/>
+ <ElectronicText dataResourceId="CNTGIZMOSSML">
+ <textData><![CDATA[
+ <div class="tabletext">
+ <ol>
+ <li>Not only for children</li>
+ <li>Just need to be able to hold it in your hand</li>
+ </ol>
+ </div>
+ ]]></textData>
+ </ElectronicText>
+ <DataResource dataResourceId="GIZMOSLRG" dataResourceTypeId="ELECTRONIC_TEXT" mimeTypeId="text/html" localeString="en_US" isPublic="Y" dataResourceName="Advocacy"/>
+ <ElectronicText dataResourceId="GIZMOSLRG">
+ <textData><![CDATA[
+ <div class="tabletext">
+ <ol>
+ <li>Gizmos are the best ones</li>
+ <li>Don't use widgets, use gizmos !</li>
+ </ol>
+ </div>
+ ]]></textData>
+ </ElectronicText>
+
+ <Content contentId="CNTGIZMOSLRG" contentTypeId="WEB_SITE_PUB_PT" ownerContentId="CNTGIZMOS" contentName="Large Gizmos" description="Large Widgets" createdDate="2001-05-13 12:00:00.000" createdByUserLogin="admin"
+ dataResourceId="CNTGIZMOSLRG" mimeTypeId="text/html" localeString="en_US"/>
+ <Content contentId="CNTGIZMOSSML" contentTypeId="WEB_SITE_PUB_PT" ownerContentId="CNTGIZMOS" contentName="Small Gizmos" description="Large Widgets" createdDate="2001-05-13 12:00:00.000" createdByUserLogin="admin"
+ dataResourceId="CNTGIZMOSSML" mimeTypeId="text/html" localeString="en_US"/>
+ <Content contentId="GIZMOSLRG" contentTypeId="WEB_SITE_PUB_PT" ownerContentId="CNTGIZMOS" contentName="Advocacy" description="Advocacy" createdDate="2001-05-13 12:00:00.000" createdByUserLogin="admin"
+ dataResourceId="GIZMOSLRG" mimeTypeId="text/html" localeString="en_US"/>
+</entity-engine-xml>
\ No newline at end of file
Added: ofbiz/trunk/applications/content/testdef/lucenetests.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/testdef/lucenetests.xml?rev=1050883&view=auto
==============================================================================
--- ofbiz/trunk/applications/content/testdef/lucenetests.xml (added)
+++ ofbiz/trunk/applications/content/testdef/lucenetests.xml Sun Dec 19 15:57:13 2010
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ -->
+
+<test-suite suite-name="lucenetests"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/test-suite.xsd">
+
+ <test-case case-name="lucene-tests-data-load">
+ <entity-xml action="load" entity-xml-url="component://content/testdef/data/LuceneTestsData.xml"/>
+ </test-case>
+
+ <test-case case-name="lucene-tests"><junit-test-suite class-name="org.ofbiz.content.test.LuceneTests"/></test-case>
+
+</test-suite>