Wikitty-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- 1653 discussions
r1366 - trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 14:22:20 +0100 (Wed, 25 Jan 2012)
New Revision: 1366
Url: http://nuiton.org/repositories/revision/wikitty/1366
Log:
Fix doc
Modified:
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/AbstractCondition.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/And.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Between.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ConditionValueString.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerNaryOperator.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerOperator.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerUnaryOperator.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsAll.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsOne.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Equals.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/NotEquals.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Or.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalBinaryOperator.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalNaryOperator.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalOperator.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalTernaryOperator.java
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalUnaryOperator.java
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/AbstractCondition.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/AbstractCondition.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/AbstractCondition.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -24,10 +24,6 @@
*/
package org.nuiton.wikitty.query.conditions;
-import java.io.Serializable;
-import java.util.HashSet;
-import java.util.Set;
-import org.apache.commons.lang.ClassUtils;
import org.nuiton.wikitty.WikittyException;
import org.nuiton.wikitty.query.WikittyQueryVisitor;
import org.nuiton.wikitty.query.WikittyQueryVisitorCopy;
@@ -49,13 +45,6 @@
// serialVersionUID is used for serialization.
private static final long serialVersionUID = 1L;
- /**
- * Default constructor
- */
- public AbstractCondition() {
- super();
- }
-
@Override
public Condition copy() {
WikittyQueryVisitorCopy v = new WikittyQueryVisitorCopy();
@@ -67,7 +56,7 @@
* For non terminal condition this method add subCondition.
* For terminal this method must return an exception
*
- * When you overriden this method, you must call {@link #checkAddCondition}
+ * When you override this method, you must call {@link #checkAddCondition}
* in first
*
* @param c
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/And.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/And.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/And.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -27,6 +27,8 @@
import java.util.Arrays;
import java.util.List;
+import org.nuiton.wikitty.query.WikittyQueryMaker;
+
/**
* And operator is used to build conjunctive restriction for request on content.
* It take at least 2 args. <br>
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Between.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Between.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Between.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -48,8 +48,6 @@
* Constructor with all parameters initialized
*
* @param element
- * @param min
- * @param max
*/
public Between(Element element) {
super(element);
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ConditionValueString.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ConditionValueString.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ConditionValueString.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -25,8 +25,6 @@
package org.nuiton.wikitty.query.conditions;
import org.apache.commons.lang.ObjectUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
/**
*
@@ -38,9 +36,6 @@
*/
public class ConditionValueString extends AbstractCondition implements ConditionValue {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(ConditionValueString.class);
-
private static final long serialVersionUID = 1L;
protected String value;
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerNaryOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerNaryOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerNaryOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -28,8 +28,6 @@
import java.util.List;
import org.apache.commons.lang.ClassUtils;
import org.apache.commons.lang.ObjectUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.nuiton.wikitty.WikittyException;
import org.nuiton.wikitty.query.WikittyQueryVisitor;
@@ -46,8 +44,8 @@
*/
public abstract class ContainerNaryOperator extends ContainerOperator {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(ContainerNaryOperator.class);
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 1L;
protected List<Condition> conditions;
@@ -100,8 +98,9 @@
}
/**
- * Return Restriction list. This list is never null, but can be empty
- * @return
+ * Return Restriction list. This list is never null, but can be empty.
+ *
+ * @return conditions list
*/
public List<Condition> getConditions() {
if (conditions == null) {
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -24,11 +24,9 @@
*/
package org.nuiton.wikitty.query.conditions;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
/**
- * Permet de marker touts les containers (autorise autre chose qu'un ConditionValue
+ * Permet de marker touts les containers (autorise autre chose qu'un ConditionValue).
+ *
* @author poussin
* @version $Revision$
*
@@ -37,9 +35,6 @@
*/
public abstract class ContainerOperator extends AbstractCondition {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(ContainerOperator.class);
-
private static final long serialVersionUID = 1L;
}
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerUnaryOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerUnaryOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainerUnaryOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -26,8 +26,6 @@
import org.apache.commons.lang.ClassUtils;
import org.apache.commons.lang.ObjectUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.nuiton.wikitty.WikittyException;
import org.nuiton.wikitty.query.WikittyQueryVisitor;
@@ -43,8 +41,8 @@
*/
public abstract class ContainerUnaryOperator extends ContainerOperator {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(ContainerUnaryOperator.class);
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 1L;
protected Condition subCondition;
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsAll.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsAll.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsAll.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -57,7 +57,7 @@
* Constructor with all parameters initialized
*
* @param element
- * @param value
+ * @param values
*/
public ContainsAll(Element element, Collection<ConditionValue> values) {
super(element, values);
@@ -66,6 +66,4 @@
public ContainsAll(Element element) {
super(element);
}
-
-
-}
\ No newline at end of file
+}
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsOne.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsOne.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/ContainsOne.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -48,7 +48,7 @@
* Constructor with all parameters initialized
*
* @param element
- * @param value
+ * @param values
*/
public ContainsOne(Element element, Collection<ConditionValue> values) {
super(element, values);
@@ -57,5 +57,4 @@
public ContainsOne(Element element) {
super(element);
}
-
-}
\ No newline at end of file
+}
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Equals.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Equals.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Equals.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -61,5 +61,4 @@
public Equals(Element element, ConditionValue value) {
super(element, value);
}
-
-}
\ No newline at end of file
+}
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/NotEquals.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/NotEquals.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/NotEquals.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -25,6 +25,7 @@
package org.nuiton.wikitty.query.conditions;
import org.nuiton.wikitty.entities.Element;
+import org.nuiton.wikitty.query.WikittyQueryMaker;
/**
* NotEquals operator is used to build restriction containing "element != value"
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Or.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Or.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/Or.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -27,6 +27,8 @@
import java.util.Arrays;
import java.util.List;
+import org.nuiton.wikitty.query.WikittyQueryMaker;
+
/**
* Or operator is used to build disjunctive restriction for request on content.
* It take at least 2 args. <br>
@@ -56,7 +58,7 @@
/**
* Constructor with all parameters initialized
*
- * @param restrictions
+ * @param conditions
*/
public Or(List<Condition> conditions) {
super(conditions);
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalBinaryOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalBinaryOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalBinaryOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -54,7 +54,6 @@
* Constructor with all parameters initialized
*
* @param element
- * @param value
*/
public TerminalBinaryOperator(Element element) {
this(element, (ConditionValue)null);
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalNaryOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalNaryOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalNaryOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -30,8 +30,6 @@
import java.util.List;
import org.apache.commons.lang.ClassUtils;
import org.apache.commons.lang.ObjectUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.nuiton.wikitty.WikittyException;
import org.nuiton.wikitty.query.WikittyQueryVisitor;
@@ -45,9 +43,6 @@
*/
public class TerminalNaryOperator extends TerminalOperator {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(TerminalNaryOperator.class);
-
// serialVersionUID is used for serialization.
private static final long serialVersionUID = 1L;
@@ -58,7 +53,6 @@
* Constructor with all parameters initialized
*
* @param element
- * @param value
*/
public TerminalNaryOperator(Element element) {
this(element, (Collection<ConditionValue>)null);
@@ -68,7 +62,7 @@
* Constructor with all parameters initialized
*
* @param element
- * @param value value is internaly copied to prevent external modification
+ * @param values value is internaly copied to prevent external modification
*/
public TerminalNaryOperator(Element element, Collection<ConditionValue> values) {
this.element = element;
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -24,12 +24,8 @@
*/
package org.nuiton.wikitty.query.conditions;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.nuiton.wikitty.WikittyException;
-
/**
- * Class mere de tous les operateurs terminaux sans parametre
+ * Class mere de tous les operateurs terminaux sans parametres
* (ex: True, False)
*
* @author poussin
@@ -41,8 +37,8 @@
*/
public abstract class TerminalOperator extends AbstractCondition {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(TerminalOperator.class);
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 1L;
public TerminalOperator() {
}
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalTernaryOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalTernaryOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalTernaryOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -27,8 +27,6 @@
import org.nuiton.wikitty.entities.Element;
import org.apache.commons.lang.ClassUtils;
import org.apache.commons.lang.ObjectUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.nuiton.wikitty.WikittyException;
import org.nuiton.wikitty.query.WikittyQueryVisitor;
@@ -44,9 +42,6 @@
*/
public abstract class TerminalTernaryOperator extends TerminalOperator {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(TerminalTernaryOperator.class);
-
private static final long serialVersionUID = 1L;
protected Element element;
@@ -128,6 +123,4 @@
&& ObjectUtils.equals(this.getMax(), op.getMax());
return result;
}
-
-
}
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalUnaryOperator.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalUnaryOperator.java 2012-01-25 13:14:06 UTC (rev 1365)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/conditions/TerminalUnaryOperator.java 2012-01-25 13:22:20 UTC (rev 1366)
@@ -26,8 +26,6 @@
import org.nuiton.wikitty.entities.Element;
import org.apache.commons.lang.ObjectUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
/**
*
@@ -39,9 +37,6 @@
*/
public class TerminalUnaryOperator extends TerminalOperator {
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(TerminalUnaryOperator.class);
-
// serialVersionUID is used for serialization.
private static final long serialVersionUID = 1L;
@@ -50,8 +45,7 @@
/**
* Constructor with all parameters initialized
*
- * @param element
- * @param value value is internaly copied to prevent external modification
+ * @param element value is internaly copied to prevent external modification
*/
public TerminalUnaryOperator(Element element) {
this.element = element;
1
0
r1365 - trunk/wikitty-api/src/main/java/org/nuiton/wikitty
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 14:14:06 +0100 (Wed, 25 Jan 2012)
New Revision: 1365
Url: http://nuiton.org/repositories/revision/wikitty/1365
Log:
Fix doc
Modified:
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/WikittyClient.java
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/WikittyClient.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/WikittyClient.java 2012-01-25 13:09:17 UTC (rev 1364)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/WikittyClient.java 2012-01-25 13:14:06 UTC (rev 1365)
@@ -29,22 +29,6 @@
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.math.BigDecimal;
-
-import org.apache.commons.lang.StringUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.nuiton.util.ApplicationConfig;
-import org.nuiton.util.TimeLog;
-import org.nuiton.wikitty.entities.BusinessEntity;
-import org.nuiton.wikitty.entities.BusinessEntityImpl;
-import org.nuiton.wikitty.entities.Wikitty;
-import org.nuiton.wikitty.entities.WikittyExtension;
-import org.nuiton.wikitty.entities.WikittyGroup;
-import org.nuiton.wikitty.entities.WikittyUser;
-import org.nuiton.wikitty.services.WikittyEvent;
-import org.nuiton.wikitty.services.WikittySecurityUtil;
-import org.nuiton.wikitty.services.WikittyServiceEnhanced;
-
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
@@ -55,25 +39,38 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
+
import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.lang.StringUtils;
+import org.nuiton.util.ApplicationConfig;
+import org.nuiton.util.TimeLog;
+import org.nuiton.wikitty.entities.BusinessEntity;
+import org.nuiton.wikitty.entities.BusinessEntityImpl;
+import org.nuiton.wikitty.entities.ElementField;
+import org.nuiton.wikitty.entities.Wikitty;
+import org.nuiton.wikitty.entities.WikittyExtension;
import org.nuiton.wikitty.entities.WikittyField;
+import org.nuiton.wikitty.entities.WikittyGroup;
import org.nuiton.wikitty.entities.WikittyTokenHelper;
+import org.nuiton.wikitty.entities.WikittyUser;
import org.nuiton.wikitty.query.WikittyQuery;
import org.nuiton.wikitty.query.WikittyQueryMaker;
import org.nuiton.wikitty.query.WikittyQueryResult;
import org.nuiton.wikitty.query.WikittyQueryResultTreeNode;
-import org.nuiton.wikitty.entities.ElementField;
import org.nuiton.wikitty.query.conditions.Select;
+import org.nuiton.wikitty.services.WikittyEvent;
import org.nuiton.wikitty.services.WikittyExtensionMigrationRegistry;
+import org.nuiton.wikitty.services.WikittySecurityUtil;
+import org.nuiton.wikitty.services.WikittyServiceEnhanced;
/**
* Wikitty client is object used in client side to access WikittyService.
* It is used to transform wikitty object used by {@link WikittyService}
* into business objects used by applications.
*
- * It also manage {@link #securityToken} for {@link org.nuiton.wikitty.services.WikittyService}.
+ * It also manage {@link #securityToken} for {@link org.nuiton.wikitty.WikittyService}.
*
- * All method that need {@link #securityToken} and {@link org.nuiton.wikitty.services.WikittyService}
+ * All method that need {@link #securityToken} and {@link org.nuiton.wikitty.WikittyService}
* must be in this class and not in {@link WikittyUtil}
*
* @author poussin
@@ -86,7 +83,6 @@
public class WikittyClient {
/** to use log facility, just put in your code: log.info(\"...\"); */
- final static private Log log = LogFactory.getLog(WikittyClient.class);
final static private TimeLog timeLog = new TimeLog(WikittyClient.class);
protected ApplicationConfig config = null;
@@ -131,6 +127,7 @@
*
* @param config
* @param wikittyService
+ * @param securityToken
*/
public WikittyClient(ApplicationConfig config, WikittyService wikittyService, String securityToken) {
if (config != null) {
@@ -532,7 +529,7 @@
* @return
*/
public <E extends BusinessEntityImpl> WikittyQueryResult<E> findAllByExample(E e,
- int first, int limit, ElementField ... fieldFacet ) {
+ int first, int limit, ElementField ... fieldFacet) {
long start = TimeLog.getTime();
WikittyQuery query = new WikittyQueryMaker().wikitty(e).end()
@@ -985,12 +982,12 @@
}
/**
- * Converti un id en son object WikittyTreeNode
+ * Converti un id en son object WikittyTreeNode.
* @since 3.1
*/
static private class IdToObjectConverter<T> implements ConvertTreeVisitor.Converter<String, T> {
protected Map<String, T> objects = new HashMap<String, T>();
- protected String securityToken;
+
public IdToObjectConverter(List<String> ids, List<T> objectList) {
for (int i = 0; i < ids.size(); i++) {
@@ -1231,6 +1228,8 @@
/**
* Use with caution : It will delete ALL indexes from search engine !
* This operation should be disabled in production environment.
+ *
+ * @return clear event
*/
public WikittyEvent clear() {
long start = TimeLog.getTime();
1
0
r1364 - in trunk/wikitty-api/src/test/java/org/nuiton/wikitty: . search
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 14:09:17 +0100 (Wed, 25 Jan 2012)
New Revision: 1364
Url: http://nuiton.org/repositories/revision/wikitty/1364
Log:
Test refactoring
Added:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/search/SearchCriteriaTest.java
Removed:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/
Copied: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/search/SearchCriteriaTest.java (from rev 1363, trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/SearchCriteriaTest.java)
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/search/SearchCriteriaTest.java (rev 0)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/search/SearchCriteriaTest.java 2012-01-25 13:09:17 UTC (rev 1364)
@@ -0,0 +1,182 @@
+/*
+ * #%L
+ * Wikitty :: api
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2009 - 2010 CodeLutin, Benjamin Poussin
+ * %%
+ * 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 3 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 General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package org.nuiton.wikitty.search;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.junit.Assert;
+import org.junit.Test;
+import org.nuiton.wikitty.WikittyUtil;
+import org.nuiton.wikitty.entities.FieldType;
+import org.nuiton.wikitty.entities.Wikitty;
+import org.nuiton.wikitty.entities.WikittyExtension;
+import org.nuiton.wikitty.entities.WikittyImpl;
+import org.nuiton.wikitty.search.Criteria;
+import org.nuiton.wikitty.search.operators.And;
+import org.nuiton.wikitty.search.operators.AssociatedRestriction;
+import org.nuiton.wikitty.search.operators.Between;
+import org.nuiton.wikitty.search.operators.BinaryOperator;
+import org.nuiton.wikitty.search.operators.Equals;
+import org.nuiton.wikitty.search.operators.Or;
+import org.nuiton.wikitty.search.operators.Restriction;
+import org.nuiton.wikitty.search.operators.RestrictionName;
+import org.nuiton.wikitty.search.Search;
+
+/**
+ * @deprecated since 3.4, will be removed in 4
+ */
+@Deprecated
+public class SearchCriteriaTest {
+
+ static private Log log = LogFactory.getLog(SearchCriteriaTest.class);
+
+ String elementName = "ELM_NAME",
+ value = "Value";
+
+ @Test
+ public void testBinaryOperators() throws Exception {
+ checkSearch( q().eq(elementName, value), RestrictionName.EQUALS );
+ checkSearch( q().neq(elementName, value), RestrictionName.NOT_EQUALS );
+ checkSearch( q().lt(elementName, value), RestrictionName.LESS );
+ checkSearch( q().le(elementName, value), RestrictionName.LESS_OR_EQUAL );
+ checkSearch( q().gt(elementName, value), RestrictionName.GREATER );
+ checkSearch( q().ge(elementName, value), RestrictionName.GREATER_OR_EQUAL );
+ checkSearch( q().sw(elementName, value), RestrictionName.STARTS_WITH );
+ checkSearch( q().ew(elementName, value), RestrictionName.ENDS_WITH );
+ }
+
+ @Test
+ public void testBetween() throws Exception {
+ Criteria criteria = q().bw(elementName, "from", "to").criteria();
+ Restriction restriction = criteria.getRestriction();
+ Assert.assertTrue( restriction instanceof Between );
+ Between between = (Between) restriction;
+ Assert.assertEquals( "from", between.getMin() );
+ Assert.assertEquals( "to", between.getMax() );
+ }
+
+ @Test
+ public void testAnd() throws Exception {
+ Restriction dto = q()
+ .eq(elementName + "0", value + "0")
+ .gt(elementName + "1", value + "1")
+ .ew(elementName + "2", value + "2")
+ .criteria().getRestriction();
+ Assert.assertTrue( dto instanceof And );
+ And and = (And) dto;
+ Restriction[] dtos = and.getRestrictions().toArray(new Restriction[]{});
+ checkRestriction(dtos[0], RestrictionName.EQUALS, elementName + "0", value + "0");
+ checkRestriction(dtos[1], RestrictionName.GREATER, elementName + "1", value + "1");
+ checkRestriction(dtos[2], RestrictionName.ENDS_WITH, elementName + "2", value + "2");
+ }
+
+ @Test
+ public void testOr() throws Exception {
+ String[] elementNames = new String[4];
+ String[] values = new String[4];
+
+ for (int i = 0; i < elementNames.length; i++) {
+ elementNames[i] = elementName + i;
+ values[i] = value + i;
+ }
+
+ Search q = q().eq(elementNames[0], values[0]);
+ Search qor = q.or()
+ .gt(elementNames[1], values[1])
+ .ew(elementNames[2], values[2])
+ .lt(elementNames[3], values[3]);
+ Restriction dto = q.criteria().getRestriction();
+ Assert.assertTrue( "Restriction is " + dto.getClass().getName(), dto instanceof And );
+ And and = (And) dto;
+ Restriction[] dtos = and.getRestrictions().toArray(new Restriction[]{});
+ checkRestriction(dtos[0], RestrictionName.EQUALS, elementName + "0", value + "0");
+ Assert.assertTrue( "Restriction is " + dtos[1].getClass().getName(), dtos[1] instanceof Or );
+ Or or = (Or) dtos[1];
+ dtos = or.getRestrictions().toArray(new Restriction[]{});
+ checkRestriction(dtos[0], RestrictionName.GREATER, elementName + "1", value + "1");
+ checkRestriction(dtos[1], RestrictionName.ENDS_WITH, elementName + "2", value + "2");
+ checkRestriction(dtos[2], RestrictionName.LESS, elementName + "3", value + "3");
+ }
+
+ @Test
+ public void testAssociated() throws Exception {
+
+ /* Following request mean is :
+ * Looking for any product which price is between 15 and 25,
+ * and name starts with 'Paint',
+ * and with an associated category which name is 'Hardware'
+ */
+
+ Restriction dto = q()
+ .bw( "Product.price", "15", "25")
+ .sw( "Product.name", "Paint")
+ .associated( "Product.category" )
+ .eq( "Category.name", "Hardware" )
+ .criteria().getRestriction();
+
+ Assert.assertTrue( "Restriction is " + dto.getClass().getName(), dto instanceof AssociatedRestriction );
+ AssociatedRestriction ass = (AssociatedRestriction) dto;
+ Restriction embedded = ass.getRestriction();
+ Assert.assertTrue( "Restriction is " + dto.getClass().getName(), embedded instanceof Equals );
+ checkRestriction(embedded, RestrictionName.EQUALS, "Category.name", "Hardware");
+ Assert.assertEquals( "Product.category", ass.getElement().getName() );
+ }
+
+ @Test
+ public void testXML() throws Exception {
+ Criteria criteria = q().bw(elementName, "from", "to").criteria();
+
+ // Serialize
+ String xml = Criteria.toXML(criteria);
+ log.debug("[XML] " + xml);
+ Assert.assertNotNull(xml);
+
+ // Deserialize
+ criteria = Criteria.fromXML(xml);
+ Assert.assertNotNull(criteria);
+ }
+
+ /*
+ * -============ private test utils operations ============-
+ */
+ protected static Search q() {
+ return Search.query();
+ }
+
+ protected void checkSearch( Search search, RestrictionName name ) throws Exception {
+ Restriction dto = search.criteria().getRestriction();
+ checkRestriction( dto, name, elementName, value );
+ }
+
+ protected void checkRestriction(Restriction dto, RestrictionName name,
+ String element, String value) throws Exception {
+ Assert.assertTrue( dto instanceof BinaryOperator );
+ BinaryOperator bop = (BinaryOperator) dto;
+ Assert.assertEquals( name, dto.getName() );
+ Assert.assertEquals( element, bop.getElement().getName() );
+ Assert.assertEquals( value, bop.getValue() );
+ }
+
+}
1
0
r1363 - in trunk/wikitty-api/src/test/java/org/nuiton/wikitty: . api
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 14:07:52 +0100 (Wed, 25 Jan 2012)
New Revision: 1363
Url: http://nuiton.org/repositories/revision/wikitty/1363
Log:
Refactor wikitty util tests.
Removed:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/WikittyUtilTest.java
Modified:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyUtilTest.java
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/SearchCriteriaTest.java
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyUtilTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyUtilTest.java 2012-01-25 13:01:55 UTC (rev 1362)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyUtilTest.java 2012-01-25 13:07:52 UTC (rev 1363)
@@ -24,14 +24,36 @@
*/
package org.nuiton.wikitty;
+import java.beans.PropertyChangeListener;
+import java.math.BigDecimal;
+import java.text.ParseException;
+import java.util.Collection;
+import java.util.Collections;
import java.util.Date;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.junit.Assert;
import org.junit.Test;
+import org.nuiton.util.ApplicationConfig;
+import org.nuiton.wikitty.entities.BusinessEntity;
+import org.nuiton.wikitty.entities.FieldType;
+import org.nuiton.wikitty.entities.Wikitty;
+import org.nuiton.wikitty.entities.WikittyExtension;
+import org.nuiton.wikitty.entities.WikittyField;
+import org.nuiton.wikitty.entities.WikittyGroupImpl;
+import org.nuiton.wikitty.entities.WikittyLabel;
+import org.nuiton.wikitty.entities.WikittyLabelImpl;
+import org.nuiton.wikitty.services.WikittyServiceInMemory;
/**
- *
+ * Test on WikittyUtil class.
+ *
* @author poussin
* @version $Revision$
*
@@ -53,4 +75,731 @@
System.out.println("Date parsed: " + d2);
Assert.assertEquals(d, d2);
}
+
+ @Test
+ public void testFormat() {
+ WikittyGroupImpl group = new WikittyGroupImpl();
+ group.setName("Mon Groupe");
+
+ // test un cas passant
+ String result = WikittyUtil.format(
+ "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"$s",
+ group.getWikitty());
+ Assert.assertEquals("Group Name = Mon Groupe", result);
+
+ // test un cas passant
+ result = WikittyUtil.format(
+ "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"|noname$s",
+ group.getWikitty());
+ Assert.assertEquals("Group Name = Mon Groupe", result);
+
+ // test un cas passant avec deux fois le meme champs
+ result = WikittyUtil.format(
+ "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"$s(%"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"$s)",
+ group.getWikitty());
+ Assert.assertEquals("Group Name = Mon Groupe(Mon Groupe)", result);
+
+ // test un cas ou le champs demande n'existe pas dans le wikitty (sans remplacement)
+ result = WikittyUtil.format(
+ "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto$s",
+ group.getWikitty());
+ Assert.assertEquals("Group Name = ", result);
+
+ // test un cas ou le champs demande n'existe pas dans le wikitty (sans remplacement)
+ // avec deux fois le meme champs
+ result = WikittyUtil.format(
+ "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto$s(%"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"tata$s)",
+ group.getWikitty());
+ Assert.assertEquals("Group Name = ()", result);
+
+ // test un cas ou le champs demande n'existe pas dans le wikitty (sans remplacement)
+ result = WikittyUtil.format(
+ "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto|$s",
+ group.getWikitty());
+ Assert.assertEquals("Group Name = ", result);
+
+ // test un cas ou le champs demande n'existe pas dans le wikitty (avec remplacement
+ result = WikittyUtil.format(
+ "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto|noname$s",
+ group.getWikitty());
+ Assert.assertEquals("Group Name = noname", result);
+ }
+
+ /**
+ * Test of normalizeVersion method, of class WikittyUtil.
+ */
+ @Test
+ public void testNormalizeVersion() {
+ {
+ String version = null;
+ String expResult = "0.0";
+ String result = WikittyUtil.normalizeVersion(version);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String version = "";
+ String expResult = "0.0";
+ String result = WikittyUtil.normalizeVersion(version);
+ Assert.assertEquals(expResult, result);
+ }
+ }
+
+ /**
+ * Test of versionEquals method, of class WikittyUtil.
+ */
+ @Test
+ public void testVersionEquals() {
+ {
+ String v1 = "0.4";
+ String v2 = "0.4";
+ boolean expResult = true;
+ boolean result = WikittyUtil.versionEquals(v1, v2);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String v1 = "0.4.0";
+ String v2 = "0.4";
+ boolean expResult = false;
+ boolean result = WikittyUtil.versionEquals(v1, v2);
+ Assert.assertEquals(expResult, result);
+ }
+ }
+
+ /**
+ * Test of versionGreaterThan method, of class WikittyUtil.
+ */
+ @Test
+ public void testVersionGreaterThan() {
+ String v1 = "4.5";
+ String v2 = "4.4";
+ boolean expResult = true;
+ boolean result = WikittyUtil.versionGreaterThan(v1, v2);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of incrementMinorRevision method, of class WikittyUtil.
+ */
+ @Test
+ public void testIncrementMinorRevision() {
+ {
+ String v = "";
+ String expResult = "0.1";
+ String result = WikittyUtil.incrementMinorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String v = "0";
+ String expResult = "0.1";
+ String result = WikittyUtil.incrementMinorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String v = "1.0";
+ String expResult = "1.1";
+ String result = WikittyUtil.incrementMinorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String v = "1.4";
+ String expResult = "1.5";
+ String result = WikittyUtil.incrementMinorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String v = "1.9";
+ String expResult = "1.10";
+ String result = WikittyUtil.incrementMinorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ }
+
+ /**
+ * Test la difference de temps entre differente methode d'increment de version
+ * qui est sous forme texte.
+ *
+ * <li> parsing Integer + 1 (757ms / 3 millions d'appels)
+ * <li> switch sur les caracteres (419ms / 3 millions d'appels)
+ * <li> appel d'une methode d'increment (462ms / 3 millions d'appels)
+ */
+ @Test
+ public void testPerfIncrementMinorRevision() {
+ int MAX = 3000000;
+ String v = "0";
+
+ long time = System.currentTimeMillis();
+ for (int cpt = 0; cpt < MAX; cpt++) {
+ int i = Integer.parseInt(v) + 1;
+ v = String.valueOf(i);
+ }
+ long timeParse = System.currentTimeMillis() - time;
+
+ v = "0";
+ time = System.currentTimeMillis();
+ for (int cpt = 0; cpt < MAX; cpt++) {
+ v = inc(v);
+ }
+ long timeCall = System.currentTimeMillis() - time;
+
+ v = "0";
+ time = System.currentTimeMillis();
+ for (int cpt = 0; cpt < MAX; cpt++) {
+ char[] c = v.toCharArray();
+ boolean retenue = true;
+ for (int i = c.length - 1; retenue && i >= 0; i--) {
+ switch (c[i]) {
+ case '0':
+ c[i] = '1';
+ retenue = false;
+ break;
+ case '1':
+ c[i] = '2';
+ retenue = false;
+ break;
+ case '2':
+ c[i] = '3';
+ retenue = false;
+ break;
+ case '3':
+ c[i] = '4';
+ retenue = false;
+ break;
+ case '4':
+ c[i] = '5';
+ retenue = false;
+ break;
+ case '5':
+ c[i] = '6';
+ retenue = false;
+ break;
+ case '6':
+ c[i] = '7';
+ retenue = false;
+ break;
+ case '7':
+ c[i] = '8';
+ retenue = false;
+ break;
+ case '8':
+ c[i] = '9';
+ retenue = false;
+ break;
+ default:
+ c[i] = '0';
+ break;
+ }
+ }
+ if (retenue) {
+ v = "1" + String.valueOf(c);
+ } else {
+ v = String.valueOf(c);
+ }
+ }
+ long timeSwitch = System.currentTimeMillis() - time;
+
+ log.info("Inc parse: " + timeParse + " call: " + timeCall + " switch: "
+ + timeSwitch + " (" + v + ")");
+ }
+
+ protected String inc(String v) {
+ char[] c = v.toCharArray();
+ boolean retenue = true;
+ for (int i = c.length - 1; retenue && i >= 0; i--) {
+ switch (c[i]) {
+ case '0':
+ c[i] = '1';
+ retenue = false;
+ break;
+ case '1':
+ c[i] = '2';
+ retenue = false;
+ break;
+ case '2':
+ c[i] = '3';
+ retenue = false;
+ break;
+ case '3':
+ c[i] = '4';
+ retenue = false;
+ break;
+ case '4':
+ c[i] = '5';
+ retenue = false;
+ break;
+ case '5':
+ c[i] = '6';
+ retenue = false;
+ break;
+ case '6':
+ c[i] = '7';
+ retenue = false;
+ break;
+ case '7':
+ c[i] = '8';
+ retenue = false;
+ break;
+ case '8':
+ c[i] = '9';
+ retenue = false;
+ break;
+ default:
+ c[i] = '0';
+ break;
+ }
+ }
+ if (retenue) {
+ v = "1" + String.valueOf(c);
+ } else {
+ v = String.valueOf(c);
+ }
+ return v;
+ }
+
+ /**
+ * Test of incrementMajorRevision method, of class WikittyUtil.
+ */
+ @Test
+ public void testIncrementMajorRevision() {
+ {
+ String v = "";
+ String expResult = "1.0";
+ String result = WikittyUtil.incrementMajorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String v = "0";
+ String expResult = "1.0";
+ String result = WikittyUtil.incrementMajorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ String v = "1.5";
+ String expResult = "2.0";
+ String result = WikittyUtil.incrementMajorRevision(v);
+ Assert.assertEquals(expResult, result);
+ }
+ }
+
+ /**
+ * Test of toBigDecimal method, of class WikittyUtil.
+ */
+ @Test
+ public void testToBigDecimal() {
+ Object value = null;
+ BigDecimal expResult = new BigDecimal(0);
+ BigDecimal result = WikittyUtil.toBigDecimal(value);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of toBoolean method, of class WikittyUtil.
+ */
+ @Test
+ public void testToBoolean() {
+ Object value = null;
+ boolean expResult = false;
+ boolean result = WikittyUtil.toBoolean(value);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of toString method, of class WikittyUtil.
+ */
+ @Test
+ public void testToString() {
+ Object value = null;
+ String expResult = null;
+ String result = WikittyUtil.toString(value);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of toDate method, of class WikittyUtil.
+ */
+ @Test
+ public void testToDateNull() {
+ Object value = null;
+ Date expResult = null;
+ Date result = WikittyUtil.toDate(value);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of toWikitty method, of class WikittyUtil.
+ */
+ @Test
+ public void testToWikitty() {
+ Object value = null;
+ String expResult = null;
+ String result = WikittyUtil.toWikitty(value);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of toList method, of class WikittyUtil.
+ */
+ @Test
+ public void testToList() {
+ Object value = null;
+ Class clazz = Object.class;
+ List<Object> expResult = null;
+ List<Object> result = WikittyUtil.toList(value, clazz);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of getClass method, of class WikittyUtil.
+ */
+ @Test
+ public void testGetClass() {
+ Object value = null;
+ Class expResult = null;
+ Class result = WikittyUtil.getClass(value);
+ Assert.assertEquals(expResult, result);
+ }
+
+ /**
+ * Test of cast method, of class WikittyUtil.
+ */
+ @Test
+ public void testCast() {
+ {
+ Object obj = null;
+ Class<Object> clazz = null;
+ Object expResult = null;
+ Object result = WikittyUtil.cast(obj, clazz);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ Object obj = "Toto";
+ Class<Object> clazz = Object.class;
+ Object expResult = "Toto";
+ Object result = WikittyUtil.cast(obj, clazz);
+ Assert.assertEquals(expResult, result);
+ }
+ {
+ Object obj = new Object();
+ Class<String> clazz = String.class;
+ Object expResult = obj;
+ try {
+ Object result = WikittyUtil.cast(obj, clazz);
+ Assert.fail("cast object to string !!!");
+ } catch (Exception eee) {
+ // ok
+ }
+ }
+ }
+
+ @Test
+ public void testUID() throws Exception {
+ for (int i = 0; i < 8; i++) {
+ String uid = WikittyUtil.genUID();
+ log.info("uid = " + uid);
+ }
+ }
+
+ @Test
+ public void testWikittyExtensionBuild() {
+ String extName = "Produit";
+
+ LinkedHashMap<String, FieldType> fields = WikittyUtil
+ .buildFieldMapExtension("String name", "Numeric amount",
+ "Date buildDate");
+
+ Assert.assertNotNull(fields.get("name"));
+ Assert.assertNotNull(fields.get("amount"));
+ Assert.assertNotNull(fields.get("buildDate"));
+
+ WikittyExtension ext = new WikittyExtension(extName, "1", fields);
+
+ Assert.assertNotNull(ext.getFieldType("name"));
+ Assert.assertNotNull(ext.getFieldType("amount"));
+ Assert.assertNotNull(ext.getFieldType("buildDate"));
+ }
+
+ @Test
+ public void testWikittyExtensionTagValue() {
+ String accentValue = "Avèc_dés_açcents";
+ String floatValue = "3.3";
+ String dateValue = "2009-12-10T12:45:31:551Z";
+ String whitespaceCharacters = "ertyuio\n <df ds \r\rf sf >sd f\n\tdf";
+
+ LinkedHashMap<String, FieldType> fields = WikittyUtil
+ .buildFieldMapExtension("String name test=" + accentValue,
+ "Numeric amount defaultValue=" + floatValue,
+ "Date buildDate now=" + dateValue);
+
+ FieldType fieldName = fields.get("name");
+ Assert.assertEquals(accentValue, fieldName.getTagValue("test"));
+ Assert.assertEquals(floatValue,
+ fields.get("amount").getTagValue("defaultValue"));
+ Assert.assertEquals(dateValue,
+ fields.get("buildDate").getTagValue("now"));
+
+ fieldName.addTagValue("whitespaceCharacters", whitespaceCharacters);
+ String toDefinition = fieldName.toDefinition("name");
+ WikittyUtil.parseField(toDefinition, fieldName);
+ }
+
+ // use in testNewInstance
+ static class MonLabel extends WikittyLabelImpl {
+ }
+
+ /** check that a date is the same after parse and format */
+ @Test
+ public void testDateConsistency() throws Exception {
+ Date date = WikittyUtil.parseDate("30/01/2009");
+ Date dateFormatedAndParsed = WikittyUtil.parseDate(WikittyUtil
+ .formatDate(date));
+ Assert.assertEquals(date, dateFormatedAndParsed);
+
+ date = new Date();
+ dateFormatedAndParsed = WikittyUtil.parseDate(WikittyUtil
+ .formatDate(date));
+ Assert.assertEquals(date, dateFormatedAndParsed);
+
+ }
+
+ @Test
+ public void testParseDate() throws ParseException {
+ String date = "1982-01-22T23:00:00.000+0000Z";
+ Date date2 = WikittyUtil.parseDate(date);
+ Assert.assertNotNull(date2);
+ }
+
+ @Test
+ public void testGetWikitty() {
+
+ WikittyLabel label = new WikittyLabelImpl();
+ label.addLabels("Test");
+
+ String wikittyId = label.getWikittyId();
+
+ Wikitty labelWikitty = WikittyUtil.getWikitty(null,null,label);
+
+ Assert.assertEquals(wikittyId, labelWikitty.getId());
+ Assert.assertEquals(Collections.singleton("Test"),labelWikitty.getFieldAsObject(WikittyLabel.EXT_WIKITTYLABEL,WikittyLabel.FIELD_WIKITTYLABEL_LABELS));
+
+ ApplicationConfig config = WikittyConfig.getConfig();
+ WikittyServiceInMemory ws = new WikittyServiceInMemory(config);
+
+ ws.store(null, Collections.singleton(labelWikitty), false);
+
+ LabelDTO dto = new LabelDTO(wikittyId);
+ dto.addLabels("toto");
+ dto.setWikittyVersion("2.0");
+
+ Wikitty w = WikittyUtil.getWikitty(ws, null, dto);
+ WikittyLabel l = new WikittyLabelImpl(w);
+
+ Assert.assertEquals(dto.getWikittyId(), l.getWikittyId());
+ Assert.assertEquals(dto.getWikittyVersion(), l.getWikittyVersion());
+ Assert.assertEquals(dto.getLabels(), l.getLabels());
+ }
+
+ @Test
+ public void testCopyBean() throws Exception {
+ WikittyLabel source = new WikittyLabelImpl();
+ source.addLabels("toto");
+ WikittyLabel dest = new WikittyLabelImpl();
+
+ WikittyUtil.copyBean(source, dest);
+
+ Assert.assertFalse(source.getWikittyId().equals(dest.getWikittyId()));
+ Assert.assertEquals(source.getWikittyVersion(), dest.getWikittyVersion());
+ Assert.assertEquals(source.getLabels(), dest.getLabels());
+ }
+
+ @Test
+ public void testCopyFrom() throws Exception {
+ {
+// System.out.println("Dto => W");
+ WikittyLabel source = new LabelDTO(WikittyUtil.genUID());
+ source.addLabels("toto");
+ source.addLabels("titi");
+ WikittyLabel dest = new WikittyLabelImpl();
+
+ dest.copyFrom(source);
+ Assert.assertFalse(source.getWikittyId().equals(dest.getWikittyId()));
+ Assert.assertEquals(source.getWikittyVersion(), dest.getWikittyVersion());
+ Assert.assertEquals(source.getLabels(), dest.getLabels());
+ }
+ {
+// System.out.println("W => Dto");
+ WikittyLabel source = new WikittyLabelImpl();
+ source.addLabels("toto");
+ source.addLabels("titi");
+ WikittyLabel dest = new LabelDTO(WikittyUtil.genUID());
+
+ dest.copyFrom(source);
+ Assert.assertFalse(source.getWikittyId().equals(dest.getWikittyId()));
+ Assert.assertEquals(source.getWikittyVersion(), dest.getWikittyVersion());
+ Assert.assertEquals(source.getLabels(), dest.getLabels());
+ }
+ }
+
+ @Test
+ public void testClone() throws Exception {
+ {
+ WikittyLabel source = new WikittyLabelImpl();
+ source.setWikittyVersion("1.0");
+ source.addLabels("toto");
+ source.addLabels("titi");
+
+ Wikitty labelWikitty = WikittyUtil.getWikitty(null, null, source);
+ Wikitty cloned = WikittyUtil.clone(labelWikitty, false);
+
+ WikittyLabelImpl labelCloned = new WikittyLabelImpl(cloned);
+
+ Assert.assertTrue(labelWikitty.getId().equals(cloned.getId()));
+ Assert.assertEquals(labelWikitty.getVersion(), cloned.getVersion());
+ Assert.assertTrue(source.getWikittyId().equals(labelCloned.getWikittyId()));
+ Assert.assertEquals(source.getWikittyVersion(), labelCloned.getWikittyVersion());
+ Assert.assertEquals(source.getLabels(), labelCloned.getLabels());
+ }
+ {
+ WikittyLabel source = new WikittyLabelImpl();
+ source.setWikittyVersion("1.0");
+ source.addLabels("toto");
+ source.addLabels("titi");
+
+ Wikitty labelWikitty = WikittyUtil.getWikitty(null, null, source);
+ Wikitty cloned = WikittyUtil.clone(labelWikitty, true);
+
+ WikittyLabelImpl labelCloned = new WikittyLabelImpl(cloned);
+
+ Assert.assertFalse(labelWikitty.getId().equals(cloned.getId()));
+ Assert.assertNotSame(labelWikitty.getVersion(), cloned.getVersion());
+ Assert.assertFalse(source.getWikittyId().equals(labelCloned.getWikittyId()));
+ Assert.assertNotSame(source.getWikittyVersion(), labelCloned.getWikittyVersion());
+ Assert.assertEquals(source.getLabels(), labelCloned.getLabels());
+ }
+ }
+
+ static public class LabelDTO implements WikittyLabel {
+
+ protected String wikittyId;
+ protected String wikittyVersion = "0.0";
+ @WikittyField(fqn="WikittyLabel.labels")
+ protected Set<String> labels = new LinkedHashSet<String>();
+
+ public LabelDTO(String wikittyId) {
+ this.wikittyId = wikittyId;
+ }
+
+ @Override
+ public String getWikittyId() {
+ return wikittyId;
+ }
+
+ @Override
+ public String getWikittyVersion() {
+ return wikittyVersion;
+ }
+
+ @Override
+ public void setWikittyVersion(String version) {
+ this.wikittyVersion = version;
+ }
+
+ /**
+ * getLabels :
+ * @return Set<String>
+ */
+ @Override
+ public Set<String> getLabels() {
+ return labels;
+ }
+
+ @Override
+ public void setLabels(Set<String> labels) {
+ this.labels = new LinkedHashSet<String>(labels);
+ }
+
+ @Override
+ public void addAllLabels(Collection<String> labels) {
+ this.labels.addAll(labels);
+ }
+
+ /**
+ * addLabels :
+ * @param element
+ */
+ @Override
+ public void addLabels(String... element) {
+ for (String v : element) {
+ labels.add(v);
+ }
+ }
+
+ /**
+ * removeLabels :
+ * @param element
+ */
+ @Override
+ public void removeLabels(String... element) {
+ for (String v : element) {
+ labels.remove(v);
+ }
+ }
+
+ /**
+ * clearLabels :
+ */
+ @Override
+ public void clearLabels() {
+ labels.clear();
+ }
+
+ @Override
+ public void copyFrom(BusinessEntity source) {
+ try {
+ BeanUtils.copyProperties(this, source);
+ } catch (Exception eee) {
+ throw new WikittyException(String.format(
+ "Can't copy source object %s", source), eee);
+ }
+ }
+
+ @Override
+ public Collection<String> getExtensionFields(String ext) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public Collection<String> getExtensionNames() {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public Object getField(String ext, String fieldName) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public void setField(String ext, String fieldName, Object value) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public void addPropertyChangeListener(PropertyChangeListener listener) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public void removePropertyChangeListener(PropertyChangeListener listener) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ }
}
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/SearchCriteriaTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/SearchCriteriaTest.java 2012-01-25 13:01:55 UTC (rev 1362)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/SearchCriteriaTest.java 2012-01-25 13:07:52 UTC (rev 1363)
@@ -44,6 +44,10 @@
import org.nuiton.wikitty.search.operators.RestrictionName;
import org.nuiton.wikitty.search.Search;
+/**
+ * @deprecated since 3.4, will be removed in 4
+ */
+@Deprecated
public class SearchCriteriaTest {
static private Log log = LogFactory.getLog(SearchCriteriaTest.class);
Deleted: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/WikittyUtilTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/WikittyUtilTest.java 2012-01-25 13:01:55 UTC (rev 1362)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/WikittyUtilTest.java 2012-01-25 13:07:52 UTC (rev 1363)
@@ -1,792 +0,0 @@
-/*
- * #%L
- * Wikitty :: api
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 CodeLutin, Benjamin Poussin
- * %%
- * 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 3 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 General Lesser Public License for more details.
- *
- * You should have received a copy of the GNU General Lesser Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/lgpl-3.0.html>.
- * #L%
- */
-
-package org.nuiton.wikitty.api;
-
-import java.beans.PropertyChangeListener;
-import java.math.BigDecimal;
-import java.text.ParseException;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Date;
-import java.util.LinkedHashMap;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Set;
-import org.apache.commons.beanutils.BeanUtils;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.junit.Assert;
-import org.junit.Test;
-import org.nuiton.util.ApplicationConfig;
-import org.nuiton.wikitty.WikittyConfig;
-import org.nuiton.wikitty.WikittyException;
-import org.nuiton.wikitty.entities.BusinessEntity;
-import org.nuiton.wikitty.entities.FieldType;
-import org.nuiton.wikitty.entities.Wikitty;
-import org.nuiton.wikitty.entities.WikittyField;
-import org.nuiton.wikitty.entities.WikittyLabel;
-import org.nuiton.wikitty.entities.WikittyLabelImpl;
-import org.nuiton.wikitty.entities.WikittyExtension;
-import org.nuiton.wikitty.WikittyUtil;
-import org.nuiton.wikitty.entities.WikittyGroupImpl;
-import org.nuiton.wikitty.services.WikittyServiceInMemory;
-
-/**
- *
- * @author poussin
- */
-public class WikittyUtilTest {
-
- static private Log log = LogFactory.getLog(WikittyUtilTest.class);
-
- @Test
- public void testFormat() {
- WikittyGroupImpl group = new WikittyGroupImpl();
- group.setName("Mon Groupe");
-
- // test un cas passant
- String result = WikittyUtil.format(
- "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"$s",
- group.getWikitty());
- Assert.assertEquals("Group Name = Mon Groupe", result);
-
- // test un cas passant
- result = WikittyUtil.format(
- "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"|noname$s",
- group.getWikitty());
- Assert.assertEquals("Group Name = Mon Groupe", result);
-
- // test un cas passant avec deux fois le meme champs
- result = WikittyUtil.format(
- "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"$s(%"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"$s)",
- group.getWikitty());
- Assert.assertEquals("Group Name = Mon Groupe(Mon Groupe)", result);
-
- // test un cas ou le champs demande n'existe pas dans le wikitty (sans remplacement)
- result = WikittyUtil.format(
- "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto$s",
- group.getWikitty());
- Assert.assertEquals("Group Name = ", result);
-
- // test un cas ou le champs demande n'existe pas dans le wikitty (sans remplacement)
- // avec deux fois le meme champs
- result = WikittyUtil.format(
- "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto$s(%"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"tata$s)",
- group.getWikitty());
- Assert.assertEquals("Group Name = ()", result);
-
- // test un cas ou le champs demande n'existe pas dans le wikitty (sans remplacement)
- result = WikittyUtil.format(
- "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto|$s",
- group.getWikitty());
- Assert.assertEquals("Group Name = ", result);
-
- // test un cas ou le champs demande n'existe pas dans le wikitty (avec remplacement
- result = WikittyUtil.format(
- "Group Name = %"+WikittyGroupImpl.FQ_FIELD_WIKITTYGROUP_NAME+"toto|noname$s",
- group.getWikitty());
- Assert.assertEquals("Group Name = noname", result);
- }
-
- /**
- * Test of normalizeVersion method, of class WikittyUtil.
- */
- @Test
- public void testNormalizeVersion() {
- {
- String version = null;
- String expResult = "0.0";
- String result = WikittyUtil.normalizeVersion(version);
- Assert.assertEquals(expResult, result);
- }
- {
- String version = "";
- String expResult = "0.0";
- String result = WikittyUtil.normalizeVersion(version);
- Assert.assertEquals(expResult, result);
- }
- }
-
- /**
- * Test of versionEquals method, of class WikittyUtil.
- */
- @Test
- public void testVersionEquals() {
- {
- String v1 = "0.4";
- String v2 = "0.4";
- boolean expResult = true;
- boolean result = WikittyUtil.versionEquals(v1, v2);
- Assert.assertEquals(expResult, result);
- }
- {
- String v1 = "0.4.0";
- String v2 = "0.4";
- boolean expResult = false;
- boolean result = WikittyUtil.versionEquals(v1, v2);
- Assert.assertEquals(expResult, result);
- }
- }
-
- /**
- * Test of versionGreaterThan method, of class WikittyUtil.
- */
- @Test
- public void testVersionGreaterThan() {
- String v1 = "4.5";
- String v2 = "4.4";
- boolean expResult = true;
- boolean result = WikittyUtil.versionGreaterThan(v1, v2);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of incrementMinorRevision method, of class WikittyUtil.
- */
- @Test
- public void testIncrementMinorRevision() {
- {
- String v = "";
- String expResult = "0.1";
- String result = WikittyUtil.incrementMinorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- {
- String v = "0";
- String expResult = "0.1";
- String result = WikittyUtil.incrementMinorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- {
- String v = "1.0";
- String expResult = "1.1";
- String result = WikittyUtil.incrementMinorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- {
- String v = "1.4";
- String expResult = "1.5";
- String result = WikittyUtil.incrementMinorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- {
- String v = "1.9";
- String expResult = "1.10";
- String result = WikittyUtil.incrementMinorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- }
-
- /**
- * Test la difference de temps entre differente methode d'increment de version
- * qui est sous forme texte.
- *
- * <li> parsing Integer + 1 (757ms / 3 millions d'appels)
- * <li> switch sur les caracteres (419ms / 3 millions d'appels)
- * <li> appel d'une methode d'increment (462ms / 3 millions d'appels)
- */
- @Test
- public void testPerfIncrementMinorRevision() {
- int MAX = 3000000;
- String v = "0";
-
- long time = System.currentTimeMillis();
- for (int cpt = 0; cpt < MAX; cpt++) {
- int i = Integer.parseInt(v) + 1;
- v = String.valueOf(i);
- }
- long timeParse = System.currentTimeMillis() - time;
-
- v = "0";
- time = System.currentTimeMillis();
- for (int cpt = 0; cpt < MAX; cpt++) {
- v = inc(v);
- }
- long timeCall = System.currentTimeMillis() - time;
-
- v = "0";
- time = System.currentTimeMillis();
- for (int cpt = 0; cpt < MAX; cpt++) {
- char[] c = v.toCharArray();
- boolean retenue = true;
- for (int i = c.length - 1; retenue && i >= 0; i--) {
- switch (c[i]) {
- case '0':
- c[i] = '1';
- retenue = false;
- break;
- case '1':
- c[i] = '2';
- retenue = false;
- break;
- case '2':
- c[i] = '3';
- retenue = false;
- break;
- case '3':
- c[i] = '4';
- retenue = false;
- break;
- case '4':
- c[i] = '5';
- retenue = false;
- break;
- case '5':
- c[i] = '6';
- retenue = false;
- break;
- case '6':
- c[i] = '7';
- retenue = false;
- break;
- case '7':
- c[i] = '8';
- retenue = false;
- break;
- case '8':
- c[i] = '9';
- retenue = false;
- break;
- default:
- c[i] = '0';
- break;
- }
- }
- if (retenue) {
- v = "1" + String.valueOf(c);
- } else {
- v = String.valueOf(c);
- }
- }
- long timeSwitch = System.currentTimeMillis() - time;
-
- log.info("Inc parse: " + timeParse + " call: " + timeCall + " switch: "
- + timeSwitch + " (" + v + ")");
- }
-
- protected String inc(String v) {
- char[] c = v.toCharArray();
- boolean retenue = true;
- for (int i = c.length - 1; retenue && i >= 0; i--) {
- switch (c[i]) {
- case '0':
- c[i] = '1';
- retenue = false;
- break;
- case '1':
- c[i] = '2';
- retenue = false;
- break;
- case '2':
- c[i] = '3';
- retenue = false;
- break;
- case '3':
- c[i] = '4';
- retenue = false;
- break;
- case '4':
- c[i] = '5';
- retenue = false;
- break;
- case '5':
- c[i] = '6';
- retenue = false;
- break;
- case '6':
- c[i] = '7';
- retenue = false;
- break;
- case '7':
- c[i] = '8';
- retenue = false;
- break;
- case '8':
- c[i] = '9';
- retenue = false;
- break;
- default:
- c[i] = '0';
- break;
- }
- }
- if (retenue) {
- v = "1" + String.valueOf(c);
- } else {
- v = String.valueOf(c);
- }
- return v;
- }
-
- /**
- * Test of incrementMajorRevision method, of class WikittyUtil.
- */
- @Test
- public void testIncrementMajorRevision() {
- {
- String v = "";
- String expResult = "1.0";
- String result = WikittyUtil.incrementMajorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- {
- String v = "0";
- String expResult = "1.0";
- String result = WikittyUtil.incrementMajorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- {
- String v = "1.5";
- String expResult = "2.0";
- String result = WikittyUtil.incrementMajorRevision(v);
- Assert.assertEquals(expResult, result);
- }
- }
-
- /**
- * Test of toBigDecimal method, of class WikittyUtil.
- */
- @Test
- public void testToBigDecimal() {
- Object value = null;
- BigDecimal expResult = new BigDecimal(0);
- BigDecimal result = WikittyUtil.toBigDecimal(value);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of toBoolean method, of class WikittyUtil.
- */
- @Test
- public void testToBoolean() {
- Object value = null;
- boolean expResult = false;
- boolean result = WikittyUtil.toBoolean(value);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of toString method, of class WikittyUtil.
- */
- @Test
- public void testToString() {
- Object value = null;
- String expResult = null;
- String result = WikittyUtil.toString(value);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of toDate method, of class WikittyUtil.
- */
- @Test
- public void testToDate() {
- Object value = null;
- Date expResult = null;
- Date result = WikittyUtil.toDate(value);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of toWikitty method, of class WikittyUtil.
- */
- @Test
- public void testToWikitty() {
- Object value = null;
- String expResult = null;
- String result = WikittyUtil.toWikitty(value);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of toList method, of class WikittyUtil.
- */
- @Test
- public void testToList() {
- Object value = null;
- Class clazz = Object.class;
- List<Object> expResult = null;
- List<Object> result = WikittyUtil.toList(value, clazz);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of getClass method, of class WikittyUtil.
- */
- @Test
- public void testGetClass() {
- Object value = null;
- Class expResult = null;
- Class result = WikittyUtil.getClass(value);
- Assert.assertEquals(expResult, result);
- }
-
- /**
- * Test of cast method, of class WikittyUtil.
- */
- @Test
- public void testCast() {
- {
- Object obj = null;
- Class<Object> clazz = null;
- Object expResult = null;
- Object result = WikittyUtil.cast(obj, clazz);
- Assert.assertEquals(expResult, result);
- }
- {
- Object obj = "Toto";
- Class<Object> clazz = Object.class;
- Object expResult = "Toto";
- Object result = WikittyUtil.cast(obj, clazz);
- Assert.assertEquals(expResult, result);
- }
- {
- Object obj = new Object();
- Class<String> clazz = String.class;
- Object expResult = obj;
- try {
- Object result = WikittyUtil.cast(obj, clazz);
- Assert.fail("cast object to string !!!");
- } catch (Exception eee) {
- // ok
- }
- }
- }
-
- @Test
- public void testUID() throws Exception {
- for (int i = 0; i < 8; i++) {
- String uid = WikittyUtil.genUID();
- log.info("uid = " + uid);
- }
- }
-
- @Test
- public void testWikittyExtensionBuild() {
- String extName = "Produit";
-
- LinkedHashMap<String, FieldType> fields = WikittyUtil
- .buildFieldMapExtension("String name", "Numeric amount",
- "Date buildDate");
-
- Assert.assertNotNull(fields.get("name"));
- Assert.assertNotNull(fields.get("amount"));
- Assert.assertNotNull(fields.get("buildDate"));
-
- WikittyExtension ext = new WikittyExtension(extName, "1", fields);
-
- Assert.assertNotNull(ext.getFieldType("name"));
- Assert.assertNotNull(ext.getFieldType("amount"));
- Assert.assertNotNull(ext.getFieldType("buildDate"));
- }
-
- @Test
- public void testWikittyExtensionTagValue() {
- String accentValue = "Avèc_dés_açcents";
- String floatValue = "3.3";
- String dateValue = "2009-12-10T12:45:31:551Z";
- String whitespaceCharacters = "ertyuio\n <df ds \r\rf sf >sd f\n\tdf";
-
- LinkedHashMap<String, FieldType> fields = WikittyUtil
- .buildFieldMapExtension("String name test=" + accentValue,
- "Numeric amount defaultValue=" + floatValue,
- "Date buildDate now=" + dateValue);
-
- FieldType fieldName = fields.get("name");
- Assert.assertEquals(accentValue, fieldName.getTagValue("test"));
- Assert.assertEquals(floatValue,
- fields.get("amount").getTagValue("defaultValue"));
- Assert.assertEquals(dateValue,
- fields.get("buildDate").getTagValue("now"));
-
- fieldName.addTagValue("whitespaceCharacters", whitespaceCharacters);
- String toDefinition = fieldName.toDefinition("name");
- WikittyUtil.parseField(toDefinition, fieldName);
- }
-
- // use in testNewInstance
- static class MonLabel extends WikittyLabelImpl {
- }
-
- /** check that a date is the same after parse and format */
- @Test
- public void testDateConsistency() throws Exception {
- Date date = WikittyUtil.parseDate("30/01/2009");
- Date dateFormatedAndParsed = WikittyUtil.parseDate(WikittyUtil
- .formatDate(date));
- Assert.assertEquals(date, dateFormatedAndParsed);
-
- date = new Date();
- dateFormatedAndParsed = WikittyUtil.parseDate(WikittyUtil
- .formatDate(date));
- Assert.assertEquals(date, dateFormatedAndParsed);
-
- }
-
- @Test
- public void testParseDate() throws ParseException {
- String date = "1982-01-22T23:00:00.000+0000Z";
- Date date2 = WikittyUtil.parseDate(date);
- Assert.assertNotNull(date2);
- }
-
- @Test
- public void testGetWikitty() {
-
- WikittyLabel label = new WikittyLabelImpl();
- label.addLabels("Test");
-
- String wikittyId = label.getWikittyId();
-
- Wikitty labelWikitty = WikittyUtil.getWikitty(null,null,label);
-
- Assert.assertEquals(wikittyId, labelWikitty.getId());
- Assert.assertEquals(Collections.singleton("Test"),labelWikitty.getFieldAsObject(WikittyLabel.EXT_WIKITTYLABEL,WikittyLabel.FIELD_WIKITTYLABEL_LABELS));
-
- ApplicationConfig config = WikittyConfig.getConfig();
- WikittyServiceInMemory ws = new WikittyServiceInMemory(config);
-
- ws.store(null, Collections.singleton(labelWikitty), false);
-
- LabelDTO dto = new LabelDTO(wikittyId);
- dto.addLabels("toto");
- dto.setWikittyVersion("2.0");
-
- Wikitty w = WikittyUtil.getWikitty(ws, null, dto);
- WikittyLabel l = new WikittyLabelImpl(w);
-
- Assert.assertEquals(dto.getWikittyId(), l.getWikittyId());
- Assert.assertEquals(dto.getWikittyVersion(), l.getWikittyVersion());
- Assert.assertEquals(dto.getLabels(), l.getLabels());
- }
-
- @Test
- public void testCopyBean() throws Exception {
- WikittyLabel source = new WikittyLabelImpl();
- source.addLabels("toto");
- WikittyLabel dest = new WikittyLabelImpl();
-
- WikittyUtil.copyBean(source, dest);
-
- Assert.assertFalse(source.getWikittyId().equals(dest.getWikittyId()));
- Assert.assertEquals(source.getWikittyVersion(), dest.getWikittyVersion());
- Assert.assertEquals(source.getLabels(), dest.getLabels());
- }
-
- @Test
- public void testCopyFrom() throws Exception {
- {
-// System.out.println("Dto => W");
- WikittyLabel source = new LabelDTO(WikittyUtil.genUID());
- source.addLabels("toto");
- source.addLabels("titi");
- WikittyLabel dest = new WikittyLabelImpl();
-
- dest.copyFrom(source);
- Assert.assertFalse(source.getWikittyId().equals(dest.getWikittyId()));
- Assert.assertEquals(source.getWikittyVersion(), dest.getWikittyVersion());
- Assert.assertEquals(source.getLabels(), dest.getLabels());
- }
- {
-// System.out.println("W => Dto");
- WikittyLabel source = new WikittyLabelImpl();
- source.addLabels("toto");
- source.addLabels("titi");
- WikittyLabel dest = new LabelDTO(WikittyUtil.genUID());
-
- dest.copyFrom(source);
- Assert.assertFalse(source.getWikittyId().equals(dest.getWikittyId()));
- Assert.assertEquals(source.getWikittyVersion(), dest.getWikittyVersion());
- Assert.assertEquals(source.getLabels(), dest.getLabels());
- }
- }
-
- @Test
- public void testClone() throws Exception {
- {
- WikittyLabel source = new WikittyLabelImpl();
- source.setWikittyVersion("1.0");
- source.addLabels("toto");
- source.addLabels("titi");
-
- Wikitty labelWikitty = WikittyUtil.getWikitty(null, null, source);
- Wikitty cloned = WikittyUtil.clone(labelWikitty, false);
-
- WikittyLabelImpl labelCloned = new WikittyLabelImpl(cloned);
-
- Assert.assertTrue(labelWikitty.getId().equals(cloned.getId()));
- Assert.assertEquals(labelWikitty.getVersion(), cloned.getVersion());
- Assert.assertTrue(source.getWikittyId().equals(labelCloned.getWikittyId()));
- Assert.assertEquals(source.getWikittyVersion(), labelCloned.getWikittyVersion());
- Assert.assertEquals(source.getLabels(), labelCloned.getLabels());
- }
- {
- WikittyLabel source = new WikittyLabelImpl();
- source.setWikittyVersion("1.0");
- source.addLabels("toto");
- source.addLabels("titi");
-
- Wikitty labelWikitty = WikittyUtil.getWikitty(null, null, source);
- Wikitty cloned = WikittyUtil.clone(labelWikitty, true);
-
- WikittyLabelImpl labelCloned = new WikittyLabelImpl(cloned);
-
- Assert.assertFalse(labelWikitty.getId().equals(cloned.getId()));
- Assert.assertNotSame(labelWikitty.getVersion(), cloned.getVersion());
- Assert.assertFalse(source.getWikittyId().equals(labelCloned.getWikittyId()));
- Assert.assertNotSame(source.getWikittyVersion(), labelCloned.getWikittyVersion());
- Assert.assertEquals(source.getLabels(), labelCloned.getLabels());
- }
- }
-
- static public class LabelDTO implements WikittyLabel {
-
- protected String wikittyId;
- protected String wikittyVersion = "0.0";
- @WikittyField(fqn="WikittyLabel.labels")
- protected Set<String> labels = new LinkedHashSet<String>();
-
- public LabelDTO(String wikittyId) {
- this.wikittyId = wikittyId;
- }
-
- @Override
- public String getWikittyId() {
- return wikittyId;
- }
-
- @Override
- public String getWikittyVersion() {
- return wikittyVersion;
- }
-
- @Override
- public void setWikittyVersion(String version) {
- this.wikittyVersion = version;
- }
-
- /**
- * getLabels :
- * @return Set<String>
- */
- @Override
- public Set<String> getLabels() {
- return labels;
- }
-
- @Override
- public void setLabels(Set<String> labels) {
- this.labels = new LinkedHashSet<String>(labels);
- }
-
- @Override
- public void addAllLabels(Collection<String> labels) {
- this.labels.addAll(labels);
- }
-
- /**
- * addLabels :
- * @param element
- */
- @Override
- public void addLabels(String... element) {
- for (String v : element) {
- labels.add(v);
- }
- }
-
- /**
- * removeLabels :
- * @param element
- */
- @Override
- public void removeLabels(String... element) {
- for (String v : element) {
- labels.remove(v);
- }
- }
-
- /**
- * clearLabels :
- */
- @Override
- public void clearLabels() {
- labels.clear();
- }
-
- @Override
- public void copyFrom(BusinessEntity source) {
- try {
- BeanUtils.copyProperties(this, source);
- } catch (Exception eee) {
- throw new WikittyException(String.format(
- "Can't copy source object %s", source), eee);
- }
- }
-
- @Override
- public Collection<String> getExtensionFields(String ext) {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- @Override
- public Collection<String> getExtensionNames() {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- @Override
- public Object getField(String ext, String fieldName) {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- @Override
- public void setField(String ext, String fieldName, Object value) {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- @Override
- public void addPropertyChangeListener(PropertyChangeListener listener) {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- @Override
- public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener) {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- @Override
- public void removePropertyChangeListener(PropertyChangeListener listener) {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- @Override
- public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener) {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
- }
-}
1
0
r1362 - in trunk/wikitty-api/src/test/java/org/nuiton/wikitty: . api
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 14:01:55 +0100 (Wed, 25 Jan 2012)
New Revision: 1362
Url: http://nuiton.org/repositories/revision/wikitty/1362
Log:
Move test to wikitty client test
Removed:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/AbstractSearchTest.java
Modified:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-25 10:21:09 UTC (rev 1361)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-25 13:01:55 UTC (rev 1362)
@@ -26,7 +26,10 @@
package org.nuiton.wikitty;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
import org.junit.Assert;
import org.junit.Test;
@@ -49,6 +52,10 @@
import org.nuiton.wikitty.query.WikittyQueryMaker;
import org.nuiton.wikitty.query.WikittyQueryParser;
import org.nuiton.wikitty.query.WikittyQueryResult;
+import org.nuiton.wikitty.search.Criteria;
+import org.nuiton.wikitty.search.PagedResult;
+import org.nuiton.wikitty.search.Search;
+import org.nuiton.wikitty.search.operators.Like;
import org.nuiton.wikitty.test.Category;
import org.nuiton.wikitty.test.Product;
@@ -830,4 +837,154 @@
WikittyQueryResult<Product> results4 = wikittyClient.findAllByQuery(Product.class, query4);
Assert.assertEquals(1, results4.getTotalResult());
}
+
+ @Test
+ public void testQueryMakerLowerCaseSearch() {
+ assumeTrueSearchEngineCanRunTest(); // lower case
+
+ WikittyQuery query1 = new WikittyQueryMaker().eq(Product.FQ_FIELD_PRODUCT_NAME, "Lanfeust").end();
+ WikittyQueryResult<Product> results1 = wikittyClient.findAllByQuery(Product.class, query1);
+ Assert.assertEquals(1, results1.getTotalResult());
+
+ WikittyQuery query2 = new WikittyQueryMaker().eq(Product.FQ_FIELD_PRODUCT_NAME, "lanfeust").end();
+ WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query2);
+ Assert.assertEquals(0, results2.getTotalResult());
+
+ WikittyQuery query3 = new WikittyQueryMaker().like(Product.FQ_FIELD_PRODUCT_NAME, "Lanfeust").end();
+ WikittyQueryResult<Product> results3 = wikittyClient.findAllByQuery(Product.class, query3);
+ Assert.assertEquals(1, results3.getTotalResult());
+
+ WikittyQuery query4 = new WikittyQueryMaker().like(Product.FQ_FIELD_PRODUCT_NAME, "lanfeust").end();
+ WikittyQueryResult<Product> results4 = wikittyClient.findAllByQuery(Product.class, query4);
+ Assert.assertEquals(1, results4.getTotalResult());
+ }
+
+ @Test
+ public void testQueryParserLowerCaseSearch() {
+ assumeTrueSearchEngineCanRunTest(); // lower case
+
+ WikittyQuery query1 = WikittyQueryParser.parse("Product.name=Lanfeust");
+ WikittyQueryResult<Product> results1 = wikittyClient.findAllByQuery(Product.class, query1);
+ Assert.assertEquals(1, results1.getTotalResult());
+
+ WikittyQuery query2 = WikittyQueryParser.parse("Product.name=lanfeust");
+ WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query2);
+ Assert.assertEquals(0, results2.getTotalResult());
+
+ WikittyQuery query3 = WikittyQueryParser.parse("Product.name LIKE Lanfeust");
+ WikittyQueryResult<Product> results3 = wikittyClient.findAllByQuery(Product.class, query3);
+ Assert.assertEquals(1, results3.getTotalResult());
+
+ WikittyQuery query4 = WikittyQueryParser.parse("Product.name LIKE lanfeust");
+ WikittyQueryResult<Product> results4 = wikittyClient.findAllByQuery(Product.class, query4);
+ Assert.assertEquals(1, results4.getTotalResult());
+ }
+
+ /**
+ * Test sort on wildcard fields.
+ */
+ @Test
+ public void testSearchWithSort1() {
+ assumeTrueSearchEngineCanRunTest(); // sorting
+
+ WikittyQuery query1 = WikittyQueryParser.parse("*.name=*");
+ // FIXME uncomment query1.setSortAscending("*.name");
+ WikittyQueryResult<Product> results1 = wikittyClient.findAllByQuery(Product.class, query1);
+ Assert.assertEquals(18, results1.getTotalResult());
+ }
+
+ /**
+ * Creer une nouvelle extension avec des données non ordonnées et fait
+ * une recherche triée dessus.
+ */
+ @Test
+ public void testSearchWithSort2() {
+ assumeTrueSearchEngineCanRunTest(); // sorting
+
+ //Create ext sortable
+ String sortableExtName = "sortable";
+ String numFieldName = "num";
+ WikittyExtension sortable = ExtensionFactory.create(sortableExtName, "1.0")
+ .addField(numFieldName, WikittyTypes.NUMERIC)
+ .extension();
+ wikittyClient.storeExtension(sortable);
+
+ List<Integer> expected = new ArrayList<Integer>();
+ expected.add(10);
+ expected.add(1);
+ expected.add(7);
+
+ //Create wikitty sortable
+ for (Integer i : expected) {
+ Wikitty w = new WikittyImpl();
+ w.addExtension(sortable);
+ w.setField(sortableExtName, numFieldName, i);
+ wikittyClient.store(w);
+
+ }
+ Collections.sort(expected);
+ WikittyQuery query2 = new WikittyQueryMaker().exteq(sortableExtName).end();
+ // FIXME uncomment query2.setSortAscending(WikittyUtil.getFQFieldName(sortableExtName, numFieldName));
+ WikittyQueryResult<Wikitty> results2 = wikittyClient.findAllByQuery(Wikitty.class, query2);
+
+ List<Integer> resulted = new ArrayList<Integer>();
+ for (Wikitty w : results2.getAll()) {
+ resulted.add(w.getFieldAsInt(sortableExtName, numFieldName));
+ }
+ Assert.assertEquals(expected, resulted);
+ }
+
+ /**
+ * Test sort on test data.
+ */
+ @Test
+ public void testSearchWithSortTestData() {
+ assumeTrueSearchEngineCanRunTest(); // sorting
+
+ WikittyQuery query1 = WikittyQueryParser.parse("Product.price <= 100");
+ query1.setSortDescending(Product.ELEMENT_FIELD_PRODUCT_PRICE);
+ WikittyQueryResult<Product> results1 = wikittyClient.findAllByQuery(Product.class, query1);
+ Assert.assertEquals(100, results1.get(0).getPriceFromProduct());
+ Assert.assertEquals(42, results1.get(1).getPriceFromProduct());
+ Assert.assertEquals(15, results1.get(2).getPriceFromProduct());
+ Assert.assertEquals(13, results1.get(3).getPriceFromProduct());
+ }
+
+ /**
+ * Test de la selection et de la pagination.
+ * @throws IOException
+ */
+ @Test
+ public void testPaginedSearchSelect() throws IOException {
+ assumeTrueSearchEngineCanRunTest(); // pagination
+ importBooks();
+
+ // first
+ WikittyQuery query1 = new WikittyQueryMaker()
+ .select(Product.ELEMENT_FIELD_PRODUCT_PRICE)
+ .exteq(Product.EXT_PRODUCT).end();
+ query1.setSortAscending(Product.ELEMENT_FIELD_PRODUCT_PRICE);
+ query1.setFirst(0);
+ query1.setLimit(2);
+ WikittyQueryResult<String> results1 = wikittyClient.findAllByQuery(query1);
+ // 17 books, but only 11 differents prices ?
+ Assert.assertEquals(11, results1.getTotalResult());
+ Assert.assertEquals(2, results1.getAll().size());
+ // FIXME echatellier 20120125 fails because of "13" != "13.0" (integer in test)
+ Assert.assertEquals(13, results1.get(0));
+
+ // second
+ query1.setFirst(0);
+ query1.setLimit(-1);
+ results1 = wikittyClient.findAllByQuery(query1);
+ Assert.assertEquals(17, results1.getTotalResult());
+ Assert.assertEquals(17, results1.getAll().size());
+
+ // third
+ query1.setFirst(0);
+ query1.setLimit(0);
+ results1 = wikittyClient.findAllByQuery(query1);
+ Assert.assertEquals(17, results1.getTotalResult());
+ Assert.assertEquals(0, results1.getAll().size());
+ }
}
Deleted: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/AbstractSearchTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/AbstractSearchTest.java 2012-01-25 10:21:09 UTC (rev 1361)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/AbstractSearchTest.java 2012-01-25 13:01:55 UTC (rev 1362)
@@ -1,492 +0,0 @@
-/*
- * #%L
- * Wikitty :: api
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2012 CodeLutin, Chatellier Eric
- * %%
- * 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 3 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 General Lesser Public License for more details.
- *
- * You should have received a copy of the GNU General Lesser Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/lgpl-3.0.html>.
- * #L%
- */
-package org.nuiton.wikitty.api;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.nuiton.wikitty.WikittyProxy;
-import org.nuiton.wikitty.WikittyService;
-import org.nuiton.wikitty.WikittyUtil;
-import org.nuiton.wikitty.test.Category;
-import org.nuiton.wikitty.test.CategoryImpl;
-import org.nuiton.wikitty.entities.ExtensionFactory;
-import org.nuiton.wikitty.entities.FieldType;
-import org.nuiton.wikitty.test.Product;
-import org.nuiton.wikitty.test.ProductImpl;
-import org.nuiton.wikitty.entities.Wikitty;
-import org.nuiton.wikitty.entities.WikittyExtension;
-import org.nuiton.wikitty.entities.WikittyImpl;
-import org.nuiton.wikitty.search.Criteria;
-import org.nuiton.wikitty.search.PagedResult;
-import org.nuiton.wikitty.search.Search;
-import org.nuiton.wikitty.search.operators.Element;
-import org.nuiton.wikitty.search.operators.Like;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import org.nuiton.wikitty.entities.WikittyTypes;
-
-/**
- * User: couteau
- * Date: 05/04/11
- */
-public abstract class AbstractSearchTest {
-
- protected final static Log log = LogFactory.getLog(AbstractSearchTest.class);
-
- public static final String EXT_PRODUCT = "Product";
- public static final String EXT_CATEGORY = "Category";
- public static final String PRODUCT_PRICE = "price";
- public static final String PRODUCT_NAME = "name";
- public static final String PRODUCT_CATEGORY = "category";
- public static final String PRODUCT_COLOR = "colors";
- public static final String CATEGORY_NAME = "name";
- public static final String VERSION = "3.0";
- public static String W_ID ="";
- public static String W_ENTITY_ID ="";
-
- protected WikittyProxy proxy = new WikittyProxy(getWikittyService());
-
- @Before
- public void initData(){
-
- ///////////////////////////////////////////////////////////////////////
- // CREATE EXTENSIONS NEEDED FOR TESTS //
- ///////////////////////////////////////////////////////////////////////
-
- /*//Create product extension
- WikittyExtension product = ExtensionFactory.create(EXT_PRODUCT, VERSION)
- .addField(PRODUCT_PRICE, WikittyTypes.NUMERIC)
- .addField(PRODUCT_NAME, WikittyTypes.STRING)
- .addField(PRODUCT_CATEGORY, WikittyTypes.WIKITTY)
- .addField(PRODUCT_COLOR, WikittyTypes.STRING).maxOccur(Integer.MAX_VALUE)
- .extension();
- proxy.storeExtension(product);
-
- //Create category extension
- WikittyExtension category = ExtensionFactory.create(EXT_CATEGORY, VERSION)
- .addField(CATEGORY_NAME, WikittyTypes.STRING)
- .extension();
- proxy.storeExtension(category);*/
-
- ///////////////////////////////////////////////////////////////////////
- // CREATE CATEGORIES //
- ///////////////////////////////////////////////////////////////////////
-
- //Create wikitty category named "Hardware"
- /*Wikitty category1 = new WikittyImpl();
- category1.addExtension(category);
- category1.setField(EXT_CATEGORY, CATEGORY_NAME, "HardWare");
- proxy.store(category1);
-
- //Create wikitty category named "Wrong category"
- Wikitty category2 = new WikittyImpl();
- category2.addExtension(category);
- category2.setField(EXT_CATEGORY, CATEGORY_NAME, "Wrong category");
- proxy.store(category2);
-
- ///////////////////////////////////////////////////////////////////////
- // CREATE PRODUCTS //
- ///////////////////////////////////////////////////////////////////////
-
- //Create product named Paint, price is 20 category is category1
- Wikitty product1 = new WikittyImpl();
- product1.addExtension(product);
- product1.setField(EXT_PRODUCT, PRODUCT_NAME, "Paint");
- product1.setField(EXT_PRODUCT, PRODUCT_PRICE, 20);
- product1.setField(EXT_PRODUCT, PRODUCT_CATEGORY, category1.getId());*/
- Set<String> colors1 = new HashSet<String>();
- colors1.add("Blue");
- colors1.add("Black");
- /*product1.setField(EXT_PRODUCT, PRODUCT_COLOR, colors1);
- proxy.store(product1);*/
-
- //Create product named Screwdriver, price is 3, category is category2
- /*Wikitty product2 = new WikittyImpl();
- product2.addExtension(product);
- product2.setField(EXT_PRODUCT, PRODUCT_NAME, "Screwdriver");
- product2.setField(EXT_PRODUCT, PRODUCT_PRICE, 3);
- product2.setField(EXT_PRODUCT, PRODUCT_CATEGORY, category2.getId());*/
- Set<String> colors2 = new HashSet<String>();
- colors2.add("Red");
- colors2.add("Black");
- /*product2.setField(EXT_PRODUCT, PRODUCT_COLOR, colors2);
- proxy.store(product2);*/
-
- //Create product named Paint Blue, price is 22, category is category2
- /*Wikitty product3 = new WikittyImpl();
- product3.addExtension(product);
- product3.setField(EXT_PRODUCT, PRODUCT_NAME, "Paint Blue");
- product3.setField(EXT_PRODUCT, PRODUCT_PRICE, 22);
- product3.setField(EXT_PRODUCT, PRODUCT_CATEGORY, category2.getId());*/
- Set<String> colors3 = new HashSet<String>();
- colors3.add("Blue");
- /*product3.setField(EXT_PRODUCT, PRODUCT_COLOR, colors3);
- proxy.store(product3);*/
-
- /*W_ID = product3.getId();*/
-
- ///////////////////////////////////////////////////////////////////////
- // CREATE CATEGORIES ENTITIES //
- ///////////////////////////////////////////////////////////////////////
-
- //Create wikitty category named "Hardware"
- Category Category1 = new CategoryImpl();
- Category1.setName("HardWare");
- proxy.store(Category1);
-
- //Create wikitty category named "Wrong category"
- Category Category2 = new CategoryImpl();
- Category2.setName("Wrong category");
- proxy.store(Category2);
-
- ///////////////////////////////////////////////////////////////////////
- // CREATE PRODUCTS ENTITIES //
- ///////////////////////////////////////////////////////////////////////
-
- //Create product named Paint, price is 20 category is category1
- Product Product1 = new ProductImpl();
- Product1.setName("Paint");
- Product1.setPriceFromProduct(20);
- Product1.setCategory(Category1.getWikittyId());
- Product1.setColors(colors1);
- proxy.store(Product1);
-
- //Create product named Screwdriver, price is 3, category is category2
- Product Product2 = new ProductImpl();
- Product2.setName("Screwdriver");
- Product2.setPriceFromProduct(3);
- Product2.setCategory(Category2.getWikittyId());
- Product2.setColors(colors2);
- proxy.store(Product2);
-
- //Create product named Paint Blue, price is 22, category is category2
- Product Product3 = new ProductImpl();
- Product3.setName("Paint Blue");
- Product3.setPriceFromProduct(22);
- Product3.setCategory(Category2.getWikittyId());
- Product3.setColors(colors3);
- proxy.store(Product3);
-
- W_ENTITY_ID = Product3.getWikittyId();
-
- }
-
- protected void assumeNotYetImplementedInMemory() {
- boolean isInMomory = true;
- if (isInMomory) {
- log.warn("Not yet implemented in memory, skipping");
- }
- Assume.assumeTrue(!isInMomory);
- }
-
- @Test
- public void testSearchAllLowerCase() {
- // FIXME implement it in memory
- assumeNotYetImplementedInMemory();
- {
- Criteria criteria = Search.query().eq("Category.name", "HardWare").criteria();
- PagedResult<Wikitty> pagedResult = proxy.findAllByCriteria(criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().eq("Category.name", "hardware").criteria();
- PagedResult<Wikitty> pagedResult = proxy.findAllByCriteria(criteria);
- assertPagedResultSizeEquals(0, pagedResult);
- }
- {
- Criteria criteria = Search.query().like("Category.name", "HardWare", Like.SearchAs.ToLowerCase).criteria();
- PagedResult<Wikitty> pagedResult = proxy.findAllByCriteria(criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().like("Category.name", "hardware", Like.SearchAs.ToLowerCase).criteria();
- PagedResult<Wikitty> pagedResult = proxy.findAllByCriteria(criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().like("Category.name", "HardWare", Like.SearchAs.AsText).criteria();
- PagedResult<Wikitty> pagedResult = proxy.findAllByCriteria(criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().like("Category.name", "hardware", Like.SearchAs.AsText).criteria();
- PagedResult<Wikitty> pagedResult = proxy.findAllByCriteria(criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- }
-
- @Test
- public void testEntitiesSearchAllLowerCase() {
- // FIXME implement it in memory
- assumeNotYetImplementedInMemory();
- {
- Criteria criteria = Search.query().eq(Category.FQ_FIELD_CATEGORY_NAME, "HardWare").criteria();
- PagedResult<Category> pagedResult = proxy.findAllByCriteria(Category.class, criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().eq(Category.FQ_FIELD_CATEGORY_NAME, "hardware").criteria();
- PagedResult<Category> pagedResult = proxy.findAllByCriteria(Category.class, criteria);
- assertPagedResultSizeEquals(0, pagedResult);
- }
- {
- Criteria criteria = Search.query().like(Category.FQ_FIELD_CATEGORY_NAME, "HardWare", Like.SearchAs.ToLowerCase).criteria();
- PagedResult<Category> pagedResult = proxy.findAllByCriteria(Category.class, criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().like(Category.FQ_FIELD_CATEGORY_NAME, "hardware", Like.SearchAs.ToLowerCase).criteria();
- PagedResult<Category> pagedResult = proxy.findAllByCriteria(Category.class, criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().like(Category.FQ_FIELD_CATEGORY_NAME, "HardWare", Like.SearchAs.AsText).criteria();
- PagedResult<Category> pagedResult = proxy.findAllByCriteria(Category.class, criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- {
- Criteria criteria = Search.query().like(Category.FQ_FIELD_CATEGORY_NAME, "hardware", Like.SearchAs.AsText).criteria();
- PagedResult<Category> pagedResult = proxy.findAllByCriteria(Category.class, criteria);
- assertPagedResultSizeEquals(1, pagedResult);
- }
- }
-
- @Test
- public void testSearchWithSort() {
- // FIXME implement it in memory
- assumeNotYetImplementedInMemory();
- {
- Criteria criteria = Search.query().like("*.name", "*").criteria();
- criteria.setSortAscending("*.name");
- try {
- proxy.findAllByCriteria(criteria);
- } catch (Exception eee) {
- eee.printStackTrace();
- Assert.fail();
- }
- }
- //Create ext sortable
- String sortableExtName = "sortable";
- String numFieldName = "num";
- WikittyExtension sortable = ExtensionFactory.create(sortableExtName, "1.0")
- .addField(numFieldName, WikittyTypes.NUMERIC)
- .extension();
- proxy.storeExtension(sortable);
-
- List<Integer> expected = new ArrayList<Integer>();
- expected.add(10);
- expected.add(1);
- expected.add(7);
-
- //Create wikitty sortable
- for (Integer i : expected) {
- Wikitty w = new WikittyImpl();
- w.addExtension(sortable);
- w.setField(sortableExtName, numFieldName, i);
- proxy.store(w);
-
- }
- Collections.sort(expected);
- {
- Criteria criteria = Search.query().eq(Element.ELT_EXTENSION, sortableExtName).criteria();
- criteria.setSortAscending(WikittyUtil.getFQFieldName(sortableExtName, numFieldName));
- PagedResult<Wikitty> result = proxy.findAllByCriteria(criteria);
-
- List<Integer> resulted = new ArrayList<Integer>();
- for (Wikitty w : result) {
- resulted.add(w.getFieldAsInt(sortableExtName, numFieldName));
- }
- Assert.assertEquals(expected, resulted);
- }
- }
-
- @Test
- public void testSelect() throws Exception {
-
- // FIXME sletellier 20110504 : Not yet implemented inMemorySearchTest, assuming
- assumeNotYetImplementedInMemory();
-
- Search query = Search.query().bw("Product.price", "15", "25")
- .sw("Product.name", "Paint");
- Criteria selectCriteria = query.criteria();
- selectCriteria.setSelect("Product.category");
-
- PagedResult<Wikitty> results = proxy.findAllByCriteria(selectCriteria);
- assertPagedResultSizeEquals(2, results);
-
- //Test with an associated search that returns nothing
- query = Search.query().bw("Product.price", "15", "25")
- .sw("Product.name", "Paint");
- selectCriteria = query.criteria();
- selectCriteria.setSelect("Product.name");
-
- results = proxy.findAllByCriteria(selectCriteria);
- assertPagedResultSizeEquals(0, results);
- }
-
- @Test
- public void testEntitiesSelect() throws Exception {
-
- // FIXME sletellier 20110504 : Not yet implemented inMemorySearchTest, assuming
- assumeNotYetImplementedInMemory();
-
- Search query = Search.query().bw(Product.FQ_FIELD_PRODUCT_PRICE, "15", "25")
- .sw(Product.FQ_FIELD_PRODUCT_NAME, "Paint");
- Criteria selectCriteria = query.criteria();
- selectCriteria.setSelect(Product.FQ_FIELD_PRODUCT_CATEGORY);
-
- PagedResult<Category> results = proxy.findAllByCriteria(Category.class, selectCriteria);
- assertPagedResultSizeEquals(2, results);
-
- //Test with an associated search that returns nothing
- query = Search.query().bw(Product.FQ_FIELD_PRODUCT_PRICE, "15", "25")
- .sw(Product.FQ_FIELD_PRODUCT_NAME, "Paint");
- selectCriteria = query.criteria();
- selectCriteria.setSelect(Product.FQ_FIELD_PRODUCT_NAME);
-
- results = proxy.findAllByCriteria(Category.class, selectCriteria);
- assertPagedResultSizeEquals(0, results);
- }
-
-// TODO sletellier 20111027 : try with more datas
- @Test
- public void testPaginedSelect() throws Exception {
-
- // FIXME sletellier 20110504 : Not yet implemented inMemorySearchTest, assuming
- assumeNotYetImplementedInMemory();
-
- Search query = Search.query().exteq(EXT_PRODUCT);
- Criteria selectCriteria = query.criteria();
- selectCriteria.setSelect("Product.category");
- selectCriteria.setFirstIndex(1);
- selectCriteria.setEndIndex(1);
-
- PagedResult<Wikitty> results = proxy.findAllByCriteria(selectCriteria);
- assertPaginedPagedResultSizeEquals(1, 2, results);
-
- query = Search.query().exteq(EXT_PRODUCT);
- selectCriteria = query.criteria();
- selectCriteria.setSelect("Product.category");
- selectCriteria.setFirstIndex(0);
- // No limit
- selectCriteria.setEndIndex(-1);
-
- results = proxy.findAllByCriteria(selectCriteria);
- assertPaginedPagedResultSizeEquals(2, 2, results);
-
- query = Search.query().exteq(EXT_PRODUCT);
- selectCriteria = query.criteria();
- selectCriteria.setSelect("Product.category");
- selectCriteria.setFirstIndex(0);
- selectCriteria.setEndIndex(0);
-
- results = proxy.findAllByCriteria(selectCriteria);
- assertPaginedPagedResultSizeEquals(1, 2, results);
-
- query = Search.query().exteq(EXT_PRODUCT);
- selectCriteria = query.criteria();
- selectCriteria.setSelect("Product.category");
- selectCriteria.setFirstIndex(0);
- selectCriteria.setEndIndex(1);
-
- results = proxy.findAllByCriteria(selectCriteria);
- assertPaginedPagedResultSizeEquals(2, 2, results);
- }
-
-// TODO sletellier 20111027 : try with more datas
- @Test
- public void testPaginedEntitiesSelect() throws Exception {
-
- // FIXME sletellier 20110504 : Not yet implemented inMemorySearchTest, assuming
- assumeNotYetImplementedInMemory();
-
- Search query = Search.query().exteq(Product.EXT_PRODUCT);
- Criteria selectCriteria = query.criteria();
- selectCriteria.setSelect(Product.FQ_FIELD_PRODUCT_CATEGORY);
- selectCriteria.setFirstIndex(1);
- selectCriteria.setEndIndex(1);
-
- PagedResult<Category> results = proxy.findAllByCriteria(Category.class, selectCriteria);
- assertPaginedPagedResultSizeEquals(1, 2, results);
-
- query = Search.query().exteq(Product.EXT_PRODUCT);
- selectCriteria = query.criteria();
- selectCriteria.setSelect(Product.FQ_FIELD_PRODUCT_CATEGORY);
- selectCriteria.setFirstIndex(0);
- // No limit
- selectCriteria.setEndIndex(-1);
-
- results = proxy.findAllByCriteria(Category.class, selectCriteria);
- assertPaginedPagedResultSizeEquals(2, 2, results);
-
- query = Search.query().exteq(Product.EXT_PRODUCT);
- selectCriteria = query.criteria();
- selectCriteria.setSelect(Product.FQ_FIELD_PRODUCT_CATEGORY);
- selectCriteria.setFirstIndex(0);
- selectCriteria.setEndIndex(0);
-
- results = proxy.findAllByCriteria(Category.class, selectCriteria);
- assertPaginedPagedResultSizeEquals(1, 2, results);
-
- query = Search.query().exteq(Product.EXT_PRODUCT);
- selectCriteria = query.criteria();
- selectCriteria.setSelect(Product.FQ_FIELD_PRODUCT_CATEGORY);
- selectCriteria.setFirstIndex(0);
- selectCriteria.setEndIndex(1);
-
- results = proxy.findAllByCriteria(Category.class, selectCriteria);
- assertPaginedPagedResultSizeEquals(2, 2, results);
- }
-
- @Test
- public void testComplexQueries() throws Exception {
- //TODO JC-07-04-2011 Write test
- }
-
- // Dont use this method if criteria use pagination
- protected void assertPagedResultSizeEquals(int expected, PagedResult result) {
- Assert.assertEquals(expected, result.size());
- Assert.assertEquals(expected, result.getNumFound());
- }
-
- // Use this method if criteria use pagination
- protected void assertPaginedPagedResultSizeEquals(int expected, int expectedNumFound, PagedResult result) {
- Assert.assertEquals(expected, result.size());
- Assert.assertEquals(expectedNumFound, result.getNumFound());
- }
-
- //TODO JC-07-04-2011 Write test on sortBy, facets, and with other types (date,...)
-
- public abstract WikittyService getWikittyService();
-}
1
0
r1361 - trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 11:21:09 +0100 (Wed, 25 Jan 2012)
New Revision: 1361
Url: http://nuiton.org/repositories/revision/wikitty/1361
Log:
Fix javadoc
Modified:
trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/WikittyQueryMaker.java
Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/WikittyQueryMaker.java
===================================================================
--- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/WikittyQueryMaker.java 2012-01-25 09:31:23 UTC (rev 1360)
+++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/query/WikittyQueryMaker.java 2012-01-25 10:21:09 UTC (rev 1361)
@@ -924,7 +924,6 @@
*
* @param fqfield the element on which the restriction is put
* @param value
- * @param searchAs
* @return {@code this}
* @see {@link Like}
*/
1
0
r1360 - trunk/wikitty-api/src/test/java/org/nuiton/wikitty
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 10:31:23 +0100 (Wed, 25 Jan 2012)
New Revision: 1360
Url: http://nuiton.org/repositories/revision/wikitty/1360
Log:
Disable test that can't run with in memory search engine
Modified:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-25 09:08:33 UTC (rev 1359)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-25 09:31:23 UTC (rev 1360)
@@ -136,6 +136,7 @@
public void testFindQueryOnMovies() {
// The Dark Knight Rises
// Die hard 4
+ assumeTrueSearchEngineCanRunTest(); // ? in regex
WikittyQuery query = new WikittyQueryMaker().eq("Movies.name", "*ar?*").end();
WikittyQueryResult<String> results = wikittyClient.findAllByQuery(query);
Assert.assertEquals(2, results.getAll().size());
@@ -767,7 +768,7 @@
WikittyQueryResult<String> results = wikittyClient.findAllByQuery(query);
Assert.assertEquals(3, results.getTotalResult());
}
-
+
/**
* Test avec des requettes imbriquées.
*
@@ -776,7 +777,7 @@
@Test
public void testQueryParserSelect() throws IOException {
importBooks();
-
+
// les livres dont le prix est entre 0 et 75
// et qui appartiennet a une catégory nommé "history"
WikittyQuery query = WikittyQueryParser.parse("Product.price=[0 TO 75] AND Product.category={SELECT id WHERE Category.code = history}");
@@ -786,10 +787,12 @@
@Test
public void testQueryMarkerWilcardEquals() {
+ assumeTrueSearchEngineCanRunTest(); // wildcard
+
WikittyQuery query1 = new WikittyQueryMaker().eq(Product.FQ_FIELD_PRODUCT_NAME, "Lanfeust").end();
WikittyQueryResult<Product> results1 = wikittyClient.findAllByQuery(Product.class, query1);
Assert.assertEquals(1, results1.getTotalResult());
-
+
WikittyQuery query2 = new WikittyQueryMaker().eq("*" + WikittyUtil.FQ_FIELD_NAME_SEPARATOR + Product.FIELD_PRODUCT_NAME, "Lanfeust").end();
WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query2);
Assert.assertEquals(1, results2.getTotalResult());
@@ -807,10 +810,12 @@
@Test
public void testQueryParserWilcardEquals() {
+ assumeTrueSearchEngineCanRunTest(); // wildcard
+
WikittyQuery query1 = WikittyQueryParser.parse("Product.name=Lanfeust");
WikittyQueryResult<Product> results1 = wikittyClient.findAllByQuery(Product.class, query1);
Assert.assertEquals(1, results1.getTotalResult());
-
+
WikittyQuery query2 = WikittyQueryParser.parse("*.name=Lanfeust");
WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query2);
Assert.assertEquals(1, results2.getTotalResult());
1
0
r1359 - trunk/wikitty-api/src/test/java/org/nuiton/wikitty
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 10:08:33 +0100 (Wed, 25 Jan 2012)
New Revision: 1359
Url: http://nuiton.org/repositories/revision/wikitty/1359
Log:
Fix used queries
Modified:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-25 09:07:21 UTC (rev 1358)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-25 09:08:33 UTC (rev 1359)
@@ -341,13 +341,13 @@
//Test using pattern matching
WikittyQuery query2 = new WikittyQueryMaker().eq(Product.ELEMENT_FIELD_PRODUCT_NAME, "Indign*").end();
- WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query);
+ WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query2);
Assert.assertEquals(1, results2.getTotalResult());
Assert.assertEquals(1, results2.getAll().size());
//Test using pattern matching
WikittyQuery query3 = new WikittyQueryMaker().eq(Product.ELEMENT_FIELD_PRODUCT_NAME, "Indign*").end();
- WikittyQueryResult<Product> results3 = wikittyClient.findAllByQuery(Product.class, query);
+ WikittyQueryResult<Product> results3 = wikittyClient.findAllByQuery(Product.class, query3);
Assert.assertEquals(1, results3.getTotalResult());
Assert.assertEquals(1, results3.getAll().size());
}
@@ -371,13 +371,13 @@
//Test using pattern matching
WikittyQuery query2 = new WikittyQueryMaker().eq(Product.FQ_FIELD_PRODUCT_NAME, "Indign*").end();
- WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query);
+ WikittyQueryResult<Product> results2 = wikittyClient.findAllByQuery(Product.class, query2);
Assert.assertEquals(1, results2.getTotalResult());
Assert.assertEquals(1, results2.getAll().size());
//Test using pattern matching
WikittyQuery query3 = new WikittyQueryMaker().eq(Product.FQ_FIELD_PRODUCT_NAME, "Indign*").end();
- WikittyQueryResult<Product> results3 = wikittyClient.findAllByQuery(Product.class, query);
+ WikittyQueryResult<Product> results3 = wikittyClient.findAllByQuery(Product.class, query3);
Assert.assertEquals(1, results3.getTotalResult());
Assert.assertEquals(1, results3.getAll().size());
}
1
0
r1358 - trunk/wikitty-api/src/test/java/org/nuiton/wikitty
by echatellier@users.nuiton.org 25 Jan '12
by echatellier@users.nuiton.org 25 Jan '12
25 Jan '12
Author: echatellier
Date: 2012-01-25 10:07:21 +0100 (Wed, 25 Jan 2012)
New Revision: 1358
Url: http://nuiton.org/repositories/revision/wikitty/1358
Log:
Fix assert count with default data count set with @Before methods
Modified:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java 2012-01-24 17:56:29 UTC (rev 1357)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java 2012-01-25 09:07:21 UTC (rev 1358)
@@ -112,14 +112,24 @@
/**
* Clear all data and add some test data for all tests.
+ *
+ * After data init, there is in wikitty storage:
+ * <ul>
+ * <li>5 categories
+ * <li>4 books
+ * <li>6 catalog node
+ * <li>3 movies
+ * <li>total = 18 wikitties
+ * </ul>
+ *
* @throws ParseException
*/
@Before
public void setUpTestData() throws ParseException {
wikittyClient = getWikittyClient();
wikittyClient.clear();
- addTestDataInClient(wikittyClient);
- addManualExtension(wikittyClient);
+ addTestDataInClient(wikittyClient); // add 15
+ addManualExtension(wikittyClient); // add 3
}
/**
@@ -227,11 +237,11 @@
dnrMovie.addToField("Movies", "author", "Nolan");
dnrMovie.addToField("Movies", "year", "2012");
- client.store(dieHardMovie, edgarMovie);
+ client.store(dieHardMovie, edgarMovie, dnrMovie);
}
/**
- * Import books from csv files.
+ * Import books from csv files (13 books)
*
* @throws IOException
*/
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-24 17:56:29 UTC (rev 1357)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-25 09:07:21 UTC (rev 1358)
@@ -136,7 +136,7 @@
public void testFindQueryOnMovies() {
// The Dark Knight Rises
// Die hard 4
- WikittyQuery query = new WikittyQueryMaker().eq("Movies.name", "*ar*").end();
+ WikittyQuery query = new WikittyQueryMaker().eq("Movies.name", "*ar?*").end();
WikittyQueryResult<String> results = wikittyClient.findAllByQuery(query);
Assert.assertEquals(2, results.getAll().size());
}
@@ -387,11 +387,13 @@
*/
@Test
public void testQueryMakerNeq() {
+ // 18 wikitty in init
+ // only one with price == 42
// test strict equals
WikittyQuery query = new WikittyQueryMaker().ne(Product.FQ_FIELD_PRODUCT_PRICE, 42).end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(3, results.getTotalResult());
- Assert.assertEquals(3, results.getAll().size());
+ Assert.assertEquals(17, results.getTotalResult());
+ Assert.assertEquals(17, results.getAll().size());
}
/**
@@ -506,34 +508,42 @@
@Test
public void testQueryMakerIdneq() throws IOException {
- importBooks(); // 4 + 13 importé = 17
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -1 avec cet id
WikittyQuery query = new WikittyQueryMaker().idne("db9dc782-e650-4fd4-83ac-3c1c5c136cde").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(16, results.getTotalResult()); // 17 livre en base
+ Assert.assertEquals(30, results.getTotalResult());
}
@Test
public void testQueryParserIdneq() throws IOException {
- importBooks(); // 4 + 13 importé = 17
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -1 avec cet id
WikittyQuery query = WikittyQueryParser.parse("id!=db9dc782-e650-4fd4-83ac-3c1c5c136cde");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(16, results.getTotalResult()); // 17 livre en base
+ Assert.assertEquals(30, results.getTotalResult());
}
@Test
public void testQueryMakerUnlike() throws IOException {
- importBooks(); // 4 + 13 importé = 17
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -6 HP
WikittyQuery query = new WikittyQueryMaker().unlike(Product.ELEMENT_FIELD_PRODUCT_NAME, "*Potter*").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
+ Assert.assertEquals(25, results.getTotalResult()); // -6 HP = 11
}
@Test
public void testQueryParserUnlike() throws IOException {
- importBooks(); // 4 + 13 importé = 17
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -6 HP
WikittyQuery query = WikittyQueryParser.parse("Product.name UNLIKE *Potter*");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
+ Assert.assertEquals(25, results.getTotalResult()); // -6 HP = 11
}
@Test
@@ -570,38 +580,46 @@
@Test
public void testQueryMakerNotsw() throws IOException {
- importBooks();
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -6 HP
WikittyQuery query = new WikittyQueryMaker().notsw(Product.ELEMENT_FIELD_PRODUCT_NAME, "Harry").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
+ Assert.assertEquals(25, results.getTotalResult());
}
@Test
public void testQueryParserNotsw() throws IOException {
- importBooks();
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -6 HP
WikittyQuery query = WikittyQueryParser.parse("Product.name!=Harry*");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
+ Assert.assertEquals(25, results.getTotalResult());
}
@Test
public void testQueryMakerNotew() throws IOException {
- importBooks();
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -1 sorciers
WikittyQuery query = new WikittyQueryMaker().notew(Product.ELEMENT_FIELD_PRODUCT_NAME, "sorciers").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(11, results.getTotalResult());
+ Assert.assertEquals(30, results.getTotalResult());
}
@Test
public void testQueryParserNotew() throws IOException {
- importBooks();
+ // + 18 in init db
+ importBooks(); // 13 importé = 31
+ // -1 sorciers
WikittyQuery query = WikittyQueryParser.parse("Product.name!=*sorciers");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(16, results.getTotalResult());
+ Assert.assertEquals(30, results.getTotalResult());
}
@Test
- public void testQuerymakerKeyword() throws IOException {
+ public void testQueryMakerKeyword() throws IOException {
importBooks();
WikittyQuery query = new WikittyQueryMaker().keyword("potter").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
@@ -665,16 +683,18 @@
@Test
public void testQueryMakerTrue() {
+ // 18 in init db
WikittyQuery query = new WikittyQueryMaker().rTrue().end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(4, results.getTotalResult());
+ Assert.assertEquals(18, results.getTotalResult());
}
@Test
public void testQueryParseTrue() {
+ // 18 in init db
WikittyQuery query = WikittyQueryParser.parse("TRUE");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(4, results.getTotalResult());
+ Assert.assertEquals(18, results.getTotalResult());
}
@Test
@@ -722,9 +742,10 @@
@Test
public void testQueryMakerNot() {
+ // 18 in db (4 products)
WikittyQuery query = new WikittyQueryMaker().not().exteq(Product.EXT_PRODUCT).end();
WikittyQueryResult<String> results = wikittyClient.findAllByQuery(query);
- Assert.assertEquals(13, results.getTotalResult());
+ Assert.assertEquals(14, results.getTotalResult());
}
/**
1
0
r1357 - trunk/wikitty-api/src/test/java/org/nuiton/wikitty
by echatellier@users.nuiton.org 24 Jan '12
by echatellier@users.nuiton.org 24 Jan '12
24 Jan '12
Author: echatellier
Date: 2012-01-24 18:56:29 +0100 (Tue, 24 Jan 2012)
New Revision: 1357
Url: http://nuiton.org/repositories/revision/wikitty/1357
Log:
Fix tests
Modified:
trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java
===================================================================
--- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-24 12:02:00 UTC (rev 1356)
+++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-24 17:56:29 UTC (rev 1357)
@@ -26,10 +26,7 @@
package org.nuiton.wikitty;
import java.io.IOException;
-import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
import org.junit.Assert;
import org.junit.Test;
@@ -52,10 +49,6 @@
import org.nuiton.wikitty.query.WikittyQueryMaker;
import org.nuiton.wikitty.query.WikittyQueryParser;
import org.nuiton.wikitty.query.WikittyQueryResult;
-import org.nuiton.wikitty.search.Criteria;
-import org.nuiton.wikitty.search.PagedResult;
-import org.nuiton.wikitty.search.Search;
-import org.nuiton.wikitty.search.operators.Like;
import org.nuiton.wikitty.test.Category;
import org.nuiton.wikitty.test.Product;
@@ -177,7 +170,7 @@
WikittyImportExportService ieService = new WikittyImportExportService(wikittyClient);
WikittyQuery query = new WikittyQueryMaker().eq(Element.EXTENSION, WikittyTreeNode.EXT_WIKITTYTREENODE).end();
String csvExport = ieService.syncExportAllByQuery(FORMAT.CSV, query);
-
+
// extension definition is present in xml export
Assert.assertTrue(csvExport.startsWith("\"Wikitty.Id\",\"Wikitty.Ext\",\"WikittyTreeNode.attachment\",\"WikittyTreeNode.name\",\"WikittyTreeNode.parent\""));
// some data too
@@ -251,18 +244,31 @@
Assert.assertEquals(1, results4.getTotalResult());
WikittyTreeNode mySubNode = results4.get(0);
Assert.assertEquals("MySubNode", mySubNode.getName());
- System.out.println(mySubNode.getName());
}
/**
- * Test que faire l'import 2 fois de suite cause une wikitty obselete
- * exception.
+ * Test que faire l'import après avoir modifier un des wikitty ecrase les
+ * données.
+ *
* @throws IOException
*/
- @Test(expected=WikittyException.class)
+ @Test
public void testImportTwice() throws IOException {
+ // first import
importClients();
+
+ // modify one
+ Wikitty w = wikittyClient.restore("fbcc8aed-7f67-4e3c-a9aa-221373765f8d");
+ Assert.assertNotNull("Erreur d'import de fichier csv", w);
+ w.setField("Client", "name", "titi");
+ wikittyClient.store(w);
+
+ // second import sould fail
importClients();
+
+ // aa
+ w = wikittyClient.restore("fbcc8aed-7f67-4e3c-a9aa-221373765f8d");
+ Assert.assertEquals("Toto", w.getFieldAsString("Client", "name"));
}
/**
@@ -500,34 +506,34 @@
@Test
public void testQueryMakerIdneq() throws IOException {
- importBooks(); // pour un wid connu
+ importBooks(); // 4 + 13 importé = 17
WikittyQuery query = new WikittyQueryMaker().idne("db9dc782-e650-4fd4-83ac-3c1c5c136cde").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(28, results.getTotalResult());
+ Assert.assertEquals(16, results.getTotalResult()); // 17 livre en base
}
@Test
public void testQueryParserIdneq() throws IOException {
- importBooks(); // pour un wid connu
+ importBooks(); // 4 + 13 importé = 17
WikittyQuery query = WikittyQueryParser.parse("id!=db9dc782-e650-4fd4-83ac-3c1c5c136cde");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(16, results.getTotalResult());
+ Assert.assertEquals(16, results.getTotalResult()); // 17 livre en base
}
@Test
public void testQueryMakerUnlike() throws IOException {
- importBooks();
- WikittyQuery query = new WikittyQueryMaker().unlike(Product.ELEMENT_FIELD_PRODUCT_NAME, "*potter*").end();
+ importBooks(); // 4 + 13 importé = 17
+ WikittyQuery query = new WikittyQueryMaker().unlike(Product.ELEMENT_FIELD_PRODUCT_NAME, "*Potter*").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(11, results.getTotalResult());
+ Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
}
@Test
public void testQueryParserUnlike() throws IOException {
- importBooks();
- WikittyQuery query = WikittyQueryParser.parse("Product.name UNLIKE *potter*");
+ importBooks(); // 4 + 13 importé = 17
+ WikittyQuery query = WikittyQueryParser.parse("Product.name UNLIKE *Potter*");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(11, results.getTotalResult());
+ Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
}
@Test
@@ -567,6 +573,22 @@
importBooks();
WikittyQuery query = new WikittyQueryMaker().notsw(Product.ELEMENT_FIELD_PRODUCT_NAME, "Harry").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
+ Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
+ }
+
+ @Test
+ public void testQueryParserNotsw() throws IOException {
+ importBooks();
+ WikittyQuery query = WikittyQueryParser.parse("Product.name!=Harry*");
+ WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
+ Assert.assertEquals(11, results.getTotalResult()); // -6 HP = 11
+ }
+
+ @Test
+ public void testQueryMakerNotew() throws IOException {
+ importBooks();
+ WikittyQuery query = new WikittyQueryMaker().notew(Product.ELEMENT_FIELD_PRODUCT_NAME, "sorciers").end();
+ WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
Assert.assertEquals(11, results.getTotalResult());
}
@@ -613,9 +635,9 @@
@Test
public void testQueryParserIsNull() throws IOException {
importBooks();
- WikittyQuery query = WikittyQueryParser.parse("Produit.category=NULL");
+ WikittyQuery query = WikittyQueryParser.parse("Product.category=NULL");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(1, results.getTotalResult());
+ Assert.assertEquals(2, results.getTotalResult());
}
@Test
@@ -629,7 +651,7 @@
@Test
public void testQueryParserIsNotNull() throws IOException {
importBooks();
- WikittyQuery query = WikittyQueryParser.parse("Produit.category!=NULL");
+ WikittyQuery query = WikittyQueryParser.parse("Product.category!=NULL");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
Assert.assertEquals(15, results.getTotalResult());
}
@@ -640,20 +662,34 @@
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
Assert.assertEquals(0, results.getTotalResult());
}
+
+ @Test
+ public void testQueryMakerTrue() {
+ WikittyQuery query = new WikittyQueryMaker().rTrue().end();
+ WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
+ Assert.assertEquals(4, results.getTotalResult());
+ }
@Test
public void testQueryParseTrue() {
WikittyQuery query = WikittyQueryParser.parse("TRUE");
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
- Assert.assertEquals(1, results.getTotalResult());
+ Assert.assertEquals(4, results.getTotalResult());
}
+
+ @Test
+ public void testQueryParseFalse() {
+ WikittyQuery query = WikittyQueryParser.parse("FALSE");
+ WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
+ Assert.assertEquals(0, results.getTotalResult());
+ }
@Test
public void testQueryMakerAnd() throws IOException {
importBooks();
WikittyQuery query = new WikittyQueryMaker().and()
.sw(Product.FQ_FIELD_PRODUCT_NAME, "Harry")
- .notew(Product.ELEMENT_FIELD_PRODUCT_NAME, "sorcier").end();
+ .notew(Product.ELEMENT_FIELD_PRODUCT_NAME, "sorciers").end();
WikittyQueryResult<Product> results = wikittyClient.findAllByQuery(Product.class, query);
Assert.assertEquals(5, results.getTotalResult());
}
@@ -704,10 +740,11 @@
// et qui appartiennet a une catégory nommé "history"
WikittyQuery query = new WikittyQueryMaker().and()
.bw(Product.ELEMENT_FIELD_PRODUCT_PRICE, 0, 75)
- .select(Product.ELEMENT_FIELD_PRODUCT_CATEGORY)
- .eq(Category.FQ_FIELD_CATEGORY_CODE, "history").end();
+ .containsOne(Product.ELEMENT_FIELD_PRODUCT_CATEGORY)
+ .select(Element.ID)
+ .eq(Category.FQ_FIELD_CATEGORY_CODE, "history").end();
WikittyQueryResult<String> results = wikittyClient.findAllByQuery(query);
- Assert.assertEquals(9, results.getTotalResult());
+ Assert.assertEquals(3, results.getTotalResult());
}
/**
1
0