Buix-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
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
November 2008
- 2 participants
- 31 discussions
r1011 - in lutinjaxx/trunk/jaxx-core: . src/main/java/jaxx/runtime src/test/java/jaxx/junit src/test/java/jaxx/runtime src/test/resources
by tchemitï¼ users.labs.libre-entreprise.org 02 Nov '08
by tchemitï¼ users.labs.libre-entreprise.org 02 Nov '08
02 Nov '08
Author: tchemit
Date: 2008-11-02 18:12:23 +0000 (Sun, 02 Nov 2008)
New Revision: 1011
Added:
lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContextEntryDef.java
Modified:
lutinjaxx/trunk/jaxx-core/changelog
lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/DefaultJAXXContext.java
lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContext.java
lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXInitialContext.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ClassDescriptorTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ColorConverterTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/InsetsConverterTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/JavaFileParserTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/PrimitiveConverterTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/TagManagerTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorBean.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/DefaultJAXXContextTest.java
lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/UtilTest.java
lutinjaxx/trunk/jaxx-core/src/test/resources/log4j.properties
Log:
improve JAXXContext :
- introduce a JAXXContextEntryDef to qualify an entry of a JAXXContext
- do javadoc in JAXXContext
- add logic in DefaultJAXXContext : seek in parent context if entry not found
import tests :
- fix the last failing test :)
- dumps test to JUnit4 :)
Modified: lutinjaxx/trunk/jaxx-core/changelog
===================================================================
--- lutinjaxx/trunk/jaxx-core/changelog 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/changelog 2008-11-02 18:12:23 UTC (rev 1011)
@@ -1,6 +1,13 @@
ver-0-6 chemit 200811??
+ * 20081102 [chemit] improve JAXXContext :
+ - introduce a JAXXContextEntryDef to qualify an entry of a JAXXContext
+ - do javadoc in JAXXContext
+ - add logic in DefaultJAXXContext : seek in parent context if entry not found
+ * 20081102 [chemit] improve tests :
+ - fix the last failed test from Jaxx original version :)
+ - dumps tests to JUnit4 :)
* 20081030 [chemit] improve BeanValidator :
- - add full PropertyChangeEvent java-bean support and a property valid
+ - add full PropertyChangeEvent java-bean support and a property valid
- when remove bean from validator, must remove errors from model
- make possible to have a dynamic errorListModel in jaxx files
* 20081030 [chemit] improve JAXXContext :
Modified: lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/DefaultJAXXContext.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/DefaultJAXXContext.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/DefaultJAXXContext.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -58,8 +58,21 @@
return (T) entry.getKey();
}
}
- //todo pas trouve dans ce context, on devrait rechercher dans les parents de l'ui ?
- return null;
+
+ // no value found in this context, will try in the parent context
+
+ if (JAXXContext.class == clazz) {
+ // no seek in the parent context, since we are already looking for it
+ return null;
+ }
+
+ JAXXContext parentContext = getContextValue(JAXXContext.class);
+ if (parentContext == null) {
+ // no parent context, so no value find
+ return null;
+ }
+ // seek in parent context
+ return parentContext.getContextValue(clazz, name);
}
@@ -72,11 +85,11 @@
if (ui == null) {
throw new IllegalStateException("no ui attached to this context");
}
- if (top==null) {
+ if (top == null) {
throw new IllegalArgumentException("top parameter can not be null");
}
if (!Container.class.isAssignableFrom(top.getClass())) {
- throw new IllegalArgumentException("top parameter "+top + " is not a " + Container.class);
+ throw new IllegalArgumentException("top parameter " + top + " is not a " + Container.class);
}
Container parent = ((Container) top).getParent();
if (parent != null && !clazz.isAssignableFrom(parent.getClass())) {
Modified: lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContext.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContext.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContext.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -3,63 +3,81 @@
import java.awt.Container;
/**
- * todo (make javadoc :) )
- *
+ * The {@link jaxx.runtime.JAXXContext} contract defines a generic context.
+ * <p/>
+ * A context contains two king of entries :
+ * <p/>
+ * <h2>Unamed entry</h2>
+ * a such entry maps filter only on the clas of the object of the entry.
+ * <p/>
+ * To add a <b>unamed</b> entry, use {@link #setContextValue(Object)} and {@link #getContextValue(Class)} to reteave a
+ * such entry.
+ * <p/>
+ * <h2>named entry</h2>
+ * a such entry filter on class of the object and on the name of the entry.
+ * <p/>
+ * To add a <b>named</b> entry, use {@link #setContextValue(Object,String)} and {@link #getContextValue(Class,String)}
+ * to reteave a such entry.
+ *
* @author letellier
+ * @author chemit
*/
public interface JAXXContext {
/**
- * Map actions objects used by JAXX interface.
- *
- * @param o todo
+ * Push in the context a new unamed entry.
+ * <p/>
+ * If a previous entry exists in context (unamed and same class), it will be removed.
+ *
+ * @param o the value to push in context
*/
- public void setContextValue(Object o);
+ public void setContextValue(Object o);
- /**
- * Map actions objects used by JAXX interface and their names.
+ /**
+ * * Push in the context a new amed entry.
+ * <p/>
+ * If a previous entry exists in context (same name and class), it will be removed.
*
- * @param o todo
- * @param name todo
+ * @param o the value to push in context
+ * @param name the name of the new entry
*/
- public void setContextValue(Object o, String name);
-
+ public void setContextValue(Object o, String name);
+
/**
- * Return action object used by JAXX interface.
+ * Seek for a unamed entry in the context
+ * <p/>
* This is an exemple to call a method in JAXX :
- *
- * <code>
- * <JButton onActionPerformed='{getContextValue(Action.class).method(args[])}'/>
- * </code>
+ * <p/>
+ * <code><JButton onActionPerformed='{getContextValue(Action.class).method(args[])}'/></code>
*
- * @param clazz todo
- * @return todo
+ * @param clazz the class of unamed entry to seek in context
+ * @return the value of the unamed entry for the given class, or <code>null</code> if no such entry.
*/
- public <T> T getContextValue(Class<T> clazz);
-
+ public <T> T getContextValue(Class<T> clazz);
+
/**
- * Return action object used by JAXX interface.
+ * Seek for a named entry in the context
*
- * @param clazz todo
- * @param name todo
- * @return todo
+ * @param clazz the class of named entry to seek in context
+ * @param name the name of the entry to seek in context
+ * @return the value of the named entry for the given class, or <code>null</code> if no such entry.
*/
- public <T> T getContextValue(Class<T> clazz, String name);
-
+ public <T> T getContextValue(Class<T> clazz, String name);
+
/**
* Return parent's container corresponding to the Class clazz
*
* @param clazz clazz desired
* @return parent's container
*/
- public <O extends Container> O getParentContainer(Class<O> clazz);
-
- /**
+ public <O extends Container> O getParentContainer(Class<O> clazz);
+
+ /**
* Return parent's container corresponding to the Class clazz
*
- * @param top todo
+ * @param top the top container
* @param clazz desired
* @return parent's container
*/
- public <O extends Container> O getParentContainer(Object top, Class<O> clazz);
+ public <O extends Container> O getParentContainer(Object top, Class<O> clazz);
}
Added: lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContextEntryDef.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContextEntryDef.java (rev 0)
+++ lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXContextEntryDef.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -0,0 +1,69 @@
+package jaxx.runtime;
+
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * To qualify an entry in a {@link JAXXContext}.
+ * <p/>
+ * Use the factory methods <code>newDef</code> and <code>newListDef</code< to obtain new instances.
+ *
+ * @author chemit
+ */
+public class JAXXContextEntryDef<O> implements java.io.Serializable {
+
+ /** name of the entry, can be nuill for a unamed entry. */
+ protected String name;
+
+ /** class of the entry, can not be null */
+ protected Class<O> klass;
+
+ private static final long serialVersionUID = 1L;
+
+ public static <O> JAXXContextEntryDef<O> newDef(Class<O> klass) {
+ return newDef(null, klass);
+ }
+
+ public static <O> JAXXContextEntryDef<O> newDef(String name, Class<O> klass) {
+ return new JAXXContextEntryDef<O>(name, klass);
+ }
+
+ public static <O> JAXXContextEntryDef<List<O>> newListDef() {
+ return newListDef(null);
+ }
+
+ public static <O> JAXXContextEntryDef<List<O>> newListDef(String name) {
+ return new JAXXContextEntryDef<List<O>>(name, JAXXContextEntryDef.<O>castList());
+ }
+
+
+ public String getName() {
+ return name;
+ }
+
+ public Class<O> getKlass() {
+ return klass;
+ }
+
+ public O getContextValue(JAXXContext context) {
+ return context.getContextValue(klass, name);
+ }
+
+ protected JAXXContextEntryDef(Class<O> klass) {
+ this(null, klass);
+ }
+
+ protected JAXXContextEntryDef(String name, Class<O> klass) {
+ if (klass == null) {
+ throw new IllegalArgumentException("class can not be null");
+ }
+ this.name = name;
+ this.klass = klass;
+ }
+
+ @SuppressWarnings({"unchecked"})
+ protected static <O> Class<List<O>> castList() {
+ return (Class<List<O>>) Collections.emptyList().getClass();
+ }
+
+}
Modified: lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXInitialContext.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXInitialContext.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/main/java/jaxx/runtime/JAXXInitialContext.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -22,6 +22,7 @@
*/
public class JAXXInitialContext implements JAXXContext {
+ /** This class define a simple entry of a {@link JAXXContext}. */
public static class JAXXInitialContextEntry implements Entry<String, Object> {
protected String key;
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ClassDescriptorTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ClassDescriptorTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ClassDescriptorTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -1,50 +1,57 @@
package jaxx.junit;
-import java.awt.*;
-import junit.framework.TestCase;
+import jaxx.reflect.ClassDescriptor;
+import jaxx.reflect.ClassDescriptorLoader;
+import jaxx.reflect.MethodDescriptor;
+import org.junit.Assert;
+import org.junit.Test;
-import jaxx.reflect.*;
-
-public class ClassDescriptorTest extends TestCase {
+public class ClassDescriptorTest {
+
+ @Test
public void testBuiltInClassName() throws ClassNotFoundException, NoSuchMethodException {
ClassDescriptor object = ClassDescriptorLoader.getClassDescriptor("java.lang.Object");
MethodDescriptor toString = object.getMethodDescriptor("toString", new ClassDescriptor[0]);
- assertEquals(toString.getName(), "toString");
- assertEquals(toString.getParameterTypes().length, 0);
+ Assert.assertEquals(toString.getName(), "toString");
+ Assert.assertEquals(toString.getParameterTypes().length, 0);
- MethodDescriptor equals = object.getMethodDescriptor("equals", new ClassDescriptor[] { object });
- assertEquals(equals.getName(), "equals");
- assertEquals(equals.getParameterTypes().length, 1);
- assertEquals(equals.getParameterTypes()[0], object);
+ MethodDescriptor equals = object.getMethodDescriptor("equals", new ClassDescriptor[]{object});
+ Assert.assertEquals(equals.getName(), "equals");
+ Assert.assertEquals(equals.getParameterTypes().length, 1);
+ Assert.assertEquals(equals.getParameterTypes()[0], object);
}
-
+ @Test
public void testBuiltInClass() throws ClassNotFoundException, NoSuchMethodException {
ClassDescriptor object1 = ClassDescriptorLoader.getClassDescriptor("java.lang.Object");
ClassDescriptor object2 = ClassDescriptorLoader.getClassDescriptor(Object.class);
- assertEquals(object1, object2);
+ Assert.assertEquals(object1, object2);
}
-
-
+
+ @Test
public void testUserClassName() throws ClassNotFoundException, NoSuchMethodException {
ClassDescriptor me = ClassDescriptorLoader.getClassDescriptor("jaxx.junit.ClassDescriptorTest", getClass().getClassLoader());
MethodDescriptor testUserClassName = me.getMethodDescriptor("testUserClassName", new ClassDescriptor[0]);
- assertEquals(testUserClassName.getName(), "testUserClassName");
- assertEquals(testUserClassName.getParameterTypes().length, 0);
+ Assert.assertEquals(testUserClassName.getName(), "testUserClassName");
+ Assert.assertEquals(testUserClassName.getParameterTypes().length, 0);
}
-
-
- public void testWrongCase() {
- try {
- ClassDescriptor object = ClassDescriptorLoader.getClassDescriptor("jaxx.junit.classdescriptortest", getClass().getClassLoader());
- fail("Found descriptor using wrong case: " + object);
- }
- catch (ClassNotFoundException e) { }
+
+ @Test(expected = ClassNotFoundException.class)
+ public void testWrongCase() throws ClassNotFoundException {
+ //try {
+ //ClassDescriptor object =
+ ClassDescriptorLoader.getClassDescriptor("jaxx.junit.classdescriptortest", getClass().getClassLoader());
+ // fail("Found descriptor using wrong case: " + object);
+ //}
+ //catch (ClassNotFoundException e) {
+ //}
}
-
-
+
+ @Test
public void testArrays() throws ClassNotFoundException {
ClassDescriptor intArray = ClassDescriptorLoader.getClassDescriptor(int[].class);
+ Assert.assertNotNull(intArray);
ClassDescriptor objectArray = ClassDescriptorLoader.getClassDescriptor(Object[].class);
+ Assert.assertNotNull(objectArray);
}
}
\ No newline at end of file
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ColorConverterTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ColorConverterTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ColorConverterTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -1,59 +1,51 @@
package jaxx.junit;
-import java.awt.*;
-import junit.framework.TestCase;
+import jaxx.types.ColorConverter;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
-import jaxx.types.*;
-
-public class ColorConverterTest extends TestCase {
- private ColorConverter converter;
+import java.awt.Color;
+public class ColorConverterTest {
+
+ ColorConverter converter;
+
+ @Before
public void setUp() {
converter = new ColorConverter();
}
-
-
+
+ @Test
public void testHexValue() {
Color value = (Color) converter.convertFromString("#3000FF", Color.class);
- assertEquals(value, new Color(48, 0, 255));
+ Assert.assertEquals(value, new Color(48, 0, 255));
}
-
-
+
+ @Test
public void testUpperCaseConstant() {
Color value = (Color) converter.convertFromString("RED", Color.class);
- assertEquals(value, Color.RED);
+ Assert.assertEquals(value, Color.RED);
}
-
-
+
+ @Test
public void testLowerCaseConstant() {
Color value = (Color) converter.convertFromString("blue", Color.class);
- assertEquals(value, Color.blue);
+ Assert.assertEquals(value, Color.blue);
}
-
+ @Test(expected = IllegalArgumentException.class)
public void testMissingHash() {
- try {
- Color value = (Color) converter.convertFromString("ABCDEF", Color.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("ABCDEF", Color.class);
}
-
+ @Test(expected = IllegalArgumentException.class)
public void testInvalidNumber() {
- try {
- Color value = (Color) converter.convertFromString("#ABCDEG", Color.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("#ABCDEG", Color.class);
}
-
+ @Test(expected = IllegalArgumentException.class)
public void testInvalidConstant() {
- try {
- Color value = (Color) converter.convertFromString("rEd", Color.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("rEd", Color.class);
}
}
\ No newline at end of file
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/InsetsConverterTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/InsetsConverterTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/InsetsConverterTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -1,62 +1,50 @@
package jaxx.junit;
-import java.awt.*;
-import junit.framework.TestCase;
+import jaxx.types.InsetsConverter;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
-import jaxx.types.*;
-
-public class InsetsConverterTest extends TestCase {
- private InsetsConverter converter;
+import java.awt.Insets;
+public class InsetsConverterTest {
+
+ InsetsConverter converter;
+
+ @Before
public void setUp() {
converter = new InsetsConverter();
}
-
-
+
+ @Test
public void testSingleValue() {
Insets value = (Insets) converter.convertFromString("3", Insets.class);
- assertEquals(value, new Insets(3, 3, 3, 3));
+ Assert.assertEquals(value, new Insets(3, 3, 3, 3));
}
-
-
+
+ @Test
public void testFourValues() {
Insets value = (Insets) converter.convertFromString("3, 0, 12, 1000000", Insets.class);
- assertEquals(value, new Insets(3, 0, 12, 1000000));
+ Assert.assertEquals(value, new Insets(3, 0, 12, 1000000));
}
-
-
+
+ @Test(expected = IllegalArgumentException.class)
public void testTwoValues() {
- try {
- Insets value = (Insets) converter.convertFromString("0, 4", Insets.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("0, 4", Insets.class);
}
-
+ @Test(expected = IllegalArgumentException.class)
public void testThreeValues() {
- try {
- Insets value = (Insets) converter.convertFromString("0, 4, 9", Insets.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("0, 4, 9", Insets.class);
}
-
-
+
+ @Test(expected = IllegalArgumentException.class)
public void testInvalidNumber() {
- try {
- Insets value = (Insets) converter.convertFromString("0, 4, 9, A", Insets.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("0, 4, 9, A", Insets.class);
}
-
-
+
+ @Test(expected = IllegalArgumentException.class)
public void testBadFormatting() {
- try {
- Insets value = (Insets) converter.convertFromString("0 - 1 - 2 - 3", Insets.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("0 - 1 - 2 - 3", Insets.class);
}
}
\ No newline at end of file
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/JavaFileParserTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/JavaFileParserTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/JavaFileParserTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -3,47 +3,51 @@
import jaxx.CompilerException;
import jaxx.reflect.ClassDescriptor;
import jaxx.reflect.JavaFileParser;
-import junit.framework.TestCase;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
import java.io.File;
import java.io.FileReader;
import java.io.Reader;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
+public class JavaFileParserTest {
-public class JavaFileParserTest extends TestCase {
-
/** log */
protected static final Log log = LogFactory.getLog(JavaFileParserTest.class);
-
- protected File getBaseDir() {
+
+ static File basedir;
+
+ @BeforeClass
+ public static void initBaseDir() {
// get maven env basedir
String basedir = System.getenv("basedir");
if (basedir == null) {
basedir = new File("").getAbsolutePath();
}
- return new File(basedir);
+ JavaFileParserTest.basedir = new File(basedir);
}
+ @Test
public void testParseJavaSourceFile() throws Exception {
+ File testSourceRoot = new File(basedir, "src" + File.separator + "test" + File.separator + "java");
+ Assert.assertTrue(testSourceRoot.exists());
- File testSourceRoot = new File(getBaseDir(), "src" + File.separator + "test" + File.separator + "java");
- assertTrue(testSourceRoot.exists());
-
File src = new File(testSourceRoot, getClass().getName().replaceAll("\\.", File.separator) + ".java");
- assertTrue(src.exists());
+ Assert.assertTrue(src.exists());
log.info("trying parsing file " + src);
Reader reader = new FileReader(src);
try {
ClassDescriptor result = JavaFileParser.parseJavaFile("TestParserJava", reader, getClass().getClassLoader());
- assertNotNull(result);
-
+ Assert.assertNotNull(result);
+
} catch (CompilerException e) {
- log.error("could not parse file "+src+" for reason "+e.getMessage(),e);
- fail(e.getMessage());
+ log.error("could not parse file " + src + " for reason " + e.getMessage(), e);
+ Assert.fail(e.getMessage());
}
finally {
reader.close();
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/PrimitiveConverterTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/PrimitiveConverterTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/PrimitiveConverterTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -1,106 +1,113 @@
package jaxx.junit;
-import junit.framework.TestCase;
+import jaxx.types.PrimitiveConverter;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
-import jaxx.types.*;
-
-public class PrimitiveConverterTest extends TestCase {
- private PrimitiveConverter converter;
+public class PrimitiveConverterTest {
+ PrimitiveConverter converter;
+
+
+ @Before
public void setUp() {
converter = new PrimitiveConverter();
}
-
-
+
+ @Test
public void testBoolean() {
Boolean value = (Boolean) converter.convertFromString("true", Boolean.class);
- assertTrue(value.booleanValue());
+ Assert.assertTrue(value);
value = (Boolean) converter.convertFromString("false", Boolean.class);
- assertFalse(value.booleanValue());
+ Assert.assertFalse(value);
- try {
- value = (Boolean) converter.convertFromString("yes", Boolean.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
}
+ @Test(expected = IllegalArgumentException.class)
+ public void testBoolean2() {
+ converter.convertFromString("yes", Boolean.class);
+ }
+ @Test
public void testByte() {
Byte value = (Byte) converter.convertFromString(String.valueOf(Byte.MAX_VALUE), Byte.class);
- assertEquals(value.byteValue(), Byte.MAX_VALUE);
+ Assert.assertEquals(value.byteValue(), Byte.MAX_VALUE);
- try {
- value = (Byte) converter.convertFromString(String.valueOf(1 + Byte.MAX_VALUE), Byte.class);
- fail("Expected NumberFormatException");
- }
- catch (NumberFormatException e) { }
}
+ @Test(expected = IllegalArgumentException.class)
+ public void testByte2() {
+ converter.convertFromString(String.valueOf(1 + Byte.MAX_VALUE), Byte.class);
+ }
+
+ @Test
public void testShort() {
Short value = (Short) converter.convertFromString(String.valueOf(Short.MAX_VALUE), Short.class);
- assertEquals(value.shortValue(), Short.MAX_VALUE);
+ Assert.assertEquals(value.shortValue(), Short.MAX_VALUE);
- try {
- value = (Short) converter.convertFromString(String.valueOf(1 + Short.MAX_VALUE), Short.class);
- fail("Expected NumberFormatException");
- }
- catch (NumberFormatException e) { }
+
}
+ @Test(expected = IllegalArgumentException.class)
+ public void testShort2() {
+ converter.convertFromString(String.valueOf(1 + Short.MAX_VALUE), Short.class);
+ }
+
+ @Test
public void testInteger() {
Integer value = (Integer) converter.convertFromString(String.valueOf(Integer.MAX_VALUE), Integer.class);
- assertEquals(value.intValue(), Integer.MAX_VALUE);
+ Assert.assertEquals(value.intValue(), Integer.MAX_VALUE);
+ }
- try {
- value = (Integer) converter.convertFromString(String.valueOf(1L + Integer.MAX_VALUE), Integer.class);
- fail("Expected NumberFormatException");
- }
- catch (NumberFormatException e) { }
+ @Test(expected = IllegalArgumentException.class)
+ public void testInteger2() {
+
+ converter.convertFromString(String.valueOf(1L + Integer.MAX_VALUE), Integer.class);
}
-
+ @Test
public void testLong() {
Long value = (Long) converter.convertFromString(String.valueOf(Long.MAX_VALUE), Long.class);
- assertEquals(value.longValue(), Long.MAX_VALUE);
+ Assert.assertEquals(value.longValue(), Long.MAX_VALUE);
}
-
+ @Test
public void testFloat() {
Float value = (Float) converter.convertFromString("3.1415", Float.class);
- assertTrue(value.floatValue() == 3.1415f);
+ Assert.assertTrue(value == 3.1415f);
}
-
+ @Test
public void testDouble() {
Double value = (Double) converter.convertFromString("3.1415", Double.class);
- assertTrue(value.doubleValue() == 3.1415);
+ Assert.assertTrue(value == 3.1415);
}
-
-
+
+ @Test
public void testCharacter() {
Character value = (Character) converter.convertFromString("A", Character.class);
- assertEquals(value.charValue(), 'A');
+ Assert.assertEquals(value.charValue(), 'A');
+ }
- try {
- value = (Character) converter.convertFromString("12", Character.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ @Test(expected = IllegalArgumentException.class)
+ public void testCharacter2() {
- try {
- value = (Character) converter.convertFromString("", Character.class);
- fail("Expected IllegalArgumentException");
- }
- catch (IllegalArgumentException e) { }
+ converter.convertFromString("12", Character.class);
+
}
-
-
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testCharacter3() {
+ converter.convertFromString("", Character.class);
+ }
+
+ @Test
public void testString() {
String value = (String) converter.convertFromString("Test", String.class);
- assertEquals(value, "Test");
+ Assert.assertEquals(value, "Test");
}
}
\ No newline at end of file
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/TagManagerTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/TagManagerTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/TagManagerTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -7,7 +7,10 @@
import jaxx.tags.DefaultObjectHandler;
import jaxx.tags.TagHandler;
import jaxx.tags.TagManager;
-import junit.framework.TestCase;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
import javax.swing.JPopupMenu;
import java.io.ByteArrayOutputStream;
@@ -15,12 +18,10 @@
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintStream;
-import java.io.IOException;
-public class TagManagerTest extends TestCase {
- private JAXXCompiler compiler = JAXXCompiler.createDummyCompiler();
+public class TagManagerTest {
- protected static boolean init=false;
+ JAXXCompiler compiler = JAXXCompiler.createDummyCompiler();
public static class TestHandler extends DefaultObjectHandler {
public TestHandler(ClassDescriptor beanClass) {
@@ -28,105 +29,108 @@
}
}
+ @BeforeClass
+ public static void initTagManaer() throws Exception {
- public void setUp() throws IOException, ClassNotFoundException, InstantiationException, IllegalAccessException {
+ TagManager.reset(true);
+
+ }
+
+ @Before
+ public void setUp() {
compiler.addImport("javax.swing.*");
- if (!init) {
- TagManager.reset(true);
- init=true;
- }
+
}
-
+ @Test
public void testRegisterBean() {
TagManager.registerBean(ClassDescriptorLoader.getClassDescriptor(InputStream.class), TestHandler.class);
- assertTrue(TagManager.getTagHandler(ClassDescriptorLoader.getClassDescriptor(InputStream.class)) instanceof TestHandler);
- assertTrue(TagManager.getTagHandler(ClassDescriptorLoader.getClassDescriptor(FileInputStream.class)) instanceof TestHandler);
+ Assert.assertTrue(TagManager.getTagHandler(ClassDescriptorLoader.getClassDescriptor(InputStream.class)) instanceof TestHandler);
+ Assert.assertTrue(TagManager.getTagHandler(ClassDescriptorLoader.getClassDescriptor(FileInputStream.class)) instanceof TestHandler);
}
-
+ @Test
public void testRegisterDefaultNamespace() {
TagManager.registerBean(ClassDescriptorLoader.getClassDescriptor(OutputStream.class), TestHandler.class);
TagManager.registerDefaultNamespace("OutputStream", "java.io.*");
- assertTrue("Could not find handler for OutputStream despite default namespace", TagManager.getTagHandler(null, "OutputStream", compiler) instanceof TestHandler);
+ Assert.assertTrue("Could not find handler for OutputStream despite default namespace", TagManager.getTagHandler(null, "OutputStream", compiler) instanceof TestHandler);
PrintStream oldErr = System.err;
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
System.setErr(new PrintStream(buffer));
TagManager.registerDefaultNamespace("OutputStream", "java.dummy.*");
- assertNull("Found handler for OutputStream despite ambiguous default namespace", TagManager.getTagHandler(null, "OutputStream", compiler));
+ Assert.assertNull("Found handler for OutputStream despite ambiguous default namespace", TagManager.getTagHandler(null, "OutputStream", compiler));
System.setErr(oldErr);
- assertTrue("No errors were produced with an ambiguous default namespace", buffer.size() > 0);
- assertTrue(buffer.size() > 0);
+ Assert.assertTrue("No errors were produced with an ambiguous default namespace", buffer.size() > 0);
+ Assert.assertTrue(buffer.size() > 0);
}
-
+ @Test
public void testResolveClassName() {
- assertEquals("Could not resolve class name 'Object'", TagManager.resolveClassName("Object", compiler), "java.lang.Object");
- assertEquals("Could not resolve class name 'java.lang.Object'", TagManager.resolveClassName("java.lang.Object", compiler), "java.lang.Object");
- assertNull("Unexpectedly resolved class name 'java.awt.Object'", TagManager.resolveClassName("java.awt.Object", compiler));
+ Assert.assertEquals("Could not resolve class name 'Object'", TagManager.resolveClassName("Object", compiler), "java.lang.Object");
+ Assert.assertEquals("Could not resolve class name 'java.lang.Object'", TagManager.resolveClassName("java.lang.Object", compiler), "java.lang.Object");
+ Assert.assertNull("Unexpectedly resolved class name 'java.awt.Object'", TagManager.resolveClassName("java.awt.Object", compiler));
}
-
+ @Test
public void testPackages() {
- assertNull("Unexpectedly found handler for java.awt.JButton", TagManager.getTagHandler(null, "java.awt.JButton", compiler));
- assertNotNull("Did not find handler for JButton with default namespace of java.awt.*", TagManager.getTagHandler("java.awt.*", "JButton", compiler));
- assertNull("Unexpectedly found handler for java.awt.*:JButton", TagManager.getTagHandler("java.awt.*", "JButton", true, compiler));
- assertNotNull("Did not find handler for javax.swing.JButton", TagManager.getTagHandler(null, "javax.swing.JButton", compiler));
- assertNotNull("Did not find handler for JButton with default namespace of java.swing.*", TagManager.getTagHandler("java.swing.*", "JButton", compiler));
- assertNotNull("Did not find handler for javax.swing.*:JButton", TagManager.getTagHandler("javax.swing.*", "JButton", true, compiler));
+ Assert.assertNull("Unexpectedly found handler for java.awt.JButton", TagManager.getTagHandler(null, "java.awt.JButton", compiler));
+ Assert.assertNotNull("Did not find handler for JButton with default namespace of java.awt.*", TagManager.getTagHandler("java.awt.*", "JButton", compiler));
+ Assert.assertNull("Unexpectedly found handler for java.awt.*:JButton", TagManager.getTagHandler("java.awt.*", "JButton", true, compiler));
+ Assert.assertNotNull("Did not find handler for javax.swing.JButton", TagManager.getTagHandler(null, "javax.swing.JButton", compiler));
+ Assert.assertNotNull("Did not find handler for JButton with default namespace of java.swing.*", TagManager.getTagHandler("java.swing.*", "JButton", compiler));
+ Assert.assertNotNull("Did not find handler for javax.swing.*:JButton", TagManager.getTagHandler("javax.swing.*", "JButton", true, compiler));
}
-
+ @Test
public void testImport() throws Exception {
- assertNull("Found handler for ActionListener despite no java.awt.event.* import", TagManager.getTagHandler(null, "ActionListener", compiler));
+ Assert.assertNull("Found handler for ActionListener despite no java.awt.event.* import", TagManager.getTagHandler(null, "ActionListener", compiler));
compiler.addImport("java.awt.event.*");
- //fixme makethis test works again
- // assertNotNull("Did not find ActionListener with java.awt.event.* import", TagManager.getTagHandler(null, "ActionListener", compiler));
+ Assert.assertNotNull("Did not find ActionListener with java.awt.event.* import", TagManager.getTagHandler(null, "ActionListener", compiler));
}
-
+ @Test
public void testAmbiguousImport() throws Exception {
compiler.addImport("java.sql.*");
- assertNotNull("Did not find java.sql.Date with only java.sql.* imported", TagManager.getTagHandler(null, "Date", compiler));
+ Assert.assertNotNull("Did not find java.sql.Date with only java.sql.* imported", TagManager.getTagHandler(null, "Date", compiler));
PrintStream oldErr = System.err;
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
System.setErr(new PrintStream(buffer));
compiler.addImport("java.util.*");
TagManager.reset(true);
- assertNull("Still found a handler for Date with an ambiguous import", TagManager.getTagHandler(null, "Date", compiler));
+ Assert.assertNull("Still found a handler for Date with an ambiguous import", TagManager.getTagHandler(null, "Date", compiler));
System.setErr(oldErr);
- assertTrue("No errors were produced with an ambiguous import", buffer.size() > 0);
+ Assert.assertTrue("No errors were produced with an ambiguous import", buffer.size() > 0);
compiler.addImport("java.util.Date");
- assertNotNull("Did not find java.util.Date with a disambiguating import", TagManager.getTagHandler(null, "Date", compiler));
+ Assert.assertNotNull("Did not find java.util.Date with a disambiguating import", TagManager.getTagHandler(null, "Date", compiler));
}
-
+ @Test
public void testInnerClass() {
TagHandler handler = TagManager.getTagHandler(null, "JPopupMenu.Separator", compiler);
- assertTrue("Unable to resolve tag <JPopupMenu.Separator>", handler instanceof DefaultComponentHandler);
- assertTrue(((DefaultComponentHandler) handler).getBeanClass().getName().equals(JPopupMenu.Separator.class.getName()));
+ Assert.assertTrue("Unable to resolve tag <JPopupMenu.Separator>", handler instanceof DefaultComponentHandler);
+ Assert.assertTrue(((DefaultComponentHandler) handler).getBeanClass().getName().equals(JPopupMenu.Separator.class.getName()));
handler = TagManager.getTagHandler(null, "javax.swing.JPopupMenu.Separator", compiler);
- assertTrue("Unable to resolve tag <javax.swing.JPopupMenu.Separator>", handler instanceof DefaultComponentHandler);
- assertTrue(((DefaultComponentHandler) handler).getBeanClass().getName().equals(JPopupMenu.Separator.class.getName()));
+ Assert.assertTrue("Unable to resolve tag <javax.swing.JPopupMenu.Separator>", handler instanceof DefaultComponentHandler);
+ Assert.assertTrue(((DefaultComponentHandler) handler).getBeanClass().getName().equals(JPopupMenu.Separator.class.getName()));
}
-
+ @Test
public void testWrongCase() {
- assertNull("Unexpectedly found handler for 'object'", TagManager.getTagHandler(null, "object", compiler));
- assertNull("Unexpectedly found handler for 'tagmanagertest'", TagManager.getTagHandler(null, "tagmanagertest", compiler));
+ Assert.assertNull("Unexpectedly found handler for 'object'", TagManager.getTagHandler(null, "object", compiler));
+ Assert.assertNull("Unexpectedly found handler for 'tagmanagertest'", TagManager.getTagHandler(null, "tagmanagertest", compiler));
}
-
+ @Test
public void testAliasing() {
- assertEquals("JComboBox is not aliased to jaxx.runtime.swing.JAXXComboBox", "jaxx.runtime.swing.JAXXComboBox", TagManager.resolveClassName("JComboBox", compiler));
- assertEquals("javax.swing.JComboBox is not aliased to jaxx.runtime.swing.JAXXComboBox", "jaxx.runtime.swing.JAXXComboBox", TagManager.resolveClassName("javax.swing.JComboBox", compiler));
+ Assert.assertEquals("JComboBox is not aliased to jaxx.runtime.swing.JAXXComboBox", "jaxx.runtime.swing.JAXXComboBox", TagManager.resolveClassName("JComboBox", compiler));
+ Assert.assertEquals("javax.swing.JComboBox is not aliased to jaxx.runtime.swing.JAXXComboBox", "jaxx.runtime.swing.JAXXComboBox", TagManager.resolveClassName("javax.swing.JComboBox", compiler));
}
}
\ No newline at end of file
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorBean.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorBean.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorBean.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -10,9 +10,8 @@
protected File notExistingFile;
protected File existingDirectory;
- protected File notExistingDirectory;
+ protected File notExistingDirectory;
-
PropertyChangeSupport p;
public ValidatorBean() {
@@ -61,7 +60,7 @@
public void setNotExistingFile(File notExistingFile) {
File old = this.notExistingFile;
this.notExistingFile = notExistingFile;
- p.firePropertyChange("notExistingFile", old, notExistingFile);
+ p.firePropertyChange("notExistingFile", old, notExistingFile);
}
public void setExistingDirectory(File existingDirectory) {
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/junit/ValidatorTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -3,50 +3,51 @@
import jaxx.runtime.validator.BeanValidator;
import jaxx.runtime.validator.BeanValidatorError;
import jaxx.runtime.validator.BeanValidatorErrorListModel;
-import junit.framework.TestCase;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
import javax.swing.JLabel;
import java.io.File;
import java.util.Enumeration;
/** @author chemit */
-public class ValidatorTest extends TestCase {
+public class ValidatorTest {
ValidatorBean bean;
- static protected Boolean init = null;
-
-
static protected BeanValidator<ValidatorBean> validator;
-
static protected BeanValidatorErrorListModel errors;
-
static protected File basedir;
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- if (init == null) {
- String b = System.getenv("basedir");
- if (b == null) {
- b = new File("").getAbsolutePath();
- }
- basedir = new File(b);
- validator = new BeanValidator<ValidatorBean>();
- validator.setErrorListModel(errors = new BeanValidatorErrorListModel());
- JLabel label = new JLabel();
- validator.setFieldRepresentation("existingFile", label);
- validator.setFieldRepresentation("existingDirectory", label);
- validator.setFieldRepresentation("notExistingFile", label);
- validator.setFieldRepresentation("notExistingDirectory", label);
- init = true;
+ @BeforeClass
+ public static void initValidator() throws Exception {
+
+ String b = System.getenv("basedir");
+ if (b == null) {
+ b = new File("").getAbsolutePath();
}
+ basedir = new File(b);
+ validator = new BeanValidator<ValidatorBean>();
+ validator.setErrorListModel(errors = new BeanValidatorErrorListModel());
+ JLabel label = new JLabel();
+ validator.setFieldRepresentation("existingFile", label);
+ validator.setFieldRepresentation("existingDirectory", label);
+ validator.setFieldRepresentation("notExistingFile", label);
+ validator.setFieldRepresentation("notExistingDirectory", label);
+
+ }
+
+ @Before
+ public void setUp() throws Exception {
validator.setBean(bean = new ValidatorBean());
}
+ @Test
public void testRequiredFileFieldValidator() throws Exception {
- assertNull(bean.getExistingFile());
+ Assert.assertNull(bean.getExistingFile());
assertFieldInError("existingFile", "existingFile.required", true);
bean.setExistingFile(new File(""));
@@ -63,9 +64,10 @@
}
+ @Test
public void testExistingFileFieldValidator() throws Exception {
- assertNull(bean.getExistingFile());
+ Assert.assertNull(bean.getExistingFile());
assertFieldInError("existingFile", "existingFile.required", true);
bean.setExistingFile(new File(""));
@@ -83,9 +85,10 @@
}
+ @Test
public void testNotExistingFileFieldValidator() throws Exception {
- assertNull(bean.getNotExistingFile());
+ Assert.assertNull(bean.getNotExistingFile());
assertFieldInError("notExistingFile", "notExistingFile.required", true);
bean.setNotExistingFile(new File(""));
@@ -109,9 +112,10 @@
}
+ @Test
public void testExistingDirectoryFieldValidator() throws Exception {
- assertNull(bean.getExistingDirectory());
+ Assert.assertNull(bean.getExistingDirectory());
assertFieldInError("existingDirectory", "existingDirectory.required", true);
bean.setExistingDirectory(new File(""));
@@ -129,8 +133,9 @@
}
+ @Test
public void testNotExistingDirectoryFieldValidator() throws Exception {
- assertNull(bean.getNotExistingDirectory());
+ Assert.assertNull(bean.getNotExistingDirectory());
assertFieldInError("notExistingDirectory", "notExistingDirectory.required", true);
bean.setNotExistingDirectory(new File(""));
@@ -152,16 +157,17 @@
assertFieldInError("notExistingDirectory", "notExistingDirectory.exist", false);
}
+
protected void assertFieldInError(String s, String error, boolean required) {
Enumeration<?> myErrors = errors.elements();
while (myErrors.hasMoreElements()) {
BeanValidatorError o = (BeanValidatorError) myErrors.nextElement();
if (o.getFieldName().equals(s) && o.getError().equals(error)) {
- assertTrue(required);
+ Assert.assertTrue(required);
return;
}
}
// error was not found
- assertFalse(required);
+ Assert.assertFalse(required);
}
}
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/DefaultJAXXContextTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/DefaultJAXXContextTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/DefaultJAXXContextTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -1,89 +1,103 @@
package jaxx.runtime;
import jaxx.runtime.validator.BeanValidator;
-import junit.framework.TestCase;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
import java.awt.Container;
import java.util.List;
import java.util.Map;
/** @author chemit */
-public class DefaultJAXXContextTest extends TestCase {
+public class DefaultJAXXContextTest {
JAXXContext ctxt;
- @Override
- protected void setUp() throws Exception {
- super.setUp();
+ @Before
+ public void initContext() throws Exception {
+
// instanciate a new empty context
ctxt = new DefaultJAXXContext();
}
- public void testParentContainer() throws Exception {
- try {
- ctxt.getParentContainer(Container.class);
- fail();
- } catch (IllegalStateException e) {
- assertTrue(true);
- }
- try {
- ctxt.getParentContainer("null", Container.class);
- fail();
- } catch (IllegalStateException e) {
- assertTrue(true);
- }
+ @Test(expected = IllegalStateException.class)
+ public void testParentContainerFail_IllegalStateException() throws Exception {
+ ctxt.getParentContainer(Container.class);
+ }
+ @Test(expected = IllegalStateException.class)
+ public void testParentContainerFail_IllegalStateException2() throws Exception {
+ ctxt.getParentContainer("null", Container.class);
+ }
+
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testParentContainerFail_IllegalArgumentException() throws Exception {
+
// attach a fake ui (which is NOT a Container)
((DefaultJAXXContext) ctxt).setUi(new MyJAXXObject());
- try {
- ctxt.getParentContainer(Container.class);
- fail();
- } catch (IllegalArgumentException e) {
- assertTrue(true);
- }
+ ctxt.getParentContainer(Container.class);
+ }
- try {
- ctxt.getParentContainer(null, Container.class);
- fail();
- } catch (IllegalArgumentException e) {
- assertTrue(true);
- }
+ @Test(expected = IllegalArgumentException.class)
+ public void testParentContainerFail_IllegalArgumentException2() throws Exception {
- try {
- ctxt.getParentContainer("null", Container.class);
- fail();
- } catch (IllegalArgumentException e) {
- assertTrue(true);
- }
+ // attach a fake ui (which is NOT a Container)
+ ((DefaultJAXXContext) ctxt).setUi(new MyJAXXObject());
+ ctxt.getParentContainer(null, Container.class);
+ }
- //todo finish test with a real JAXXObject
+ @Test(expected = IllegalArgumentException.class)
+ public void testParentContainerFail_IllegalArgumentException3() throws Exception {
+ // attach a fake ui (which is NOT a Container)
+ ((DefaultJAXXContext) ctxt).setUi(new MyJAXXObject());
+ ctxt.getParentContainer("null", Container.class);
}
+ @Test
+ public void testGetParentContext() throws Exception {
+ JAXXContext expected, result;
+ expected = null;
+ result = ctxt.getContextValue(JAXXContext.class);
+ Assert.assertEquals(expected, result);
+
+ DefaultJAXXContext parentContext = new DefaultJAXXContext();
+
+ ctxt.setContextValue(parentContext);
+
+ expected = parentContext;
+ result = ctxt.getContextValue(JAXXContext.class);
+ Assert.assertEquals(expected, result);
+
+ }
+
+ @Test
public void testSetGetContextValue() throws Exception {
String expected;
String result;
result = ctxt.getContextValue(String.class);
- assertNull(result);
+ Assert.assertNull(result);
expected = "yo";
ctxt.setContextValue(expected);
result = ctxt.getContextValue(String.class);
- assertEquals(expected, result);
+ Assert.assertEquals(expected, result);
expected = "ya";
ctxt.setContextValue(expected, "second");
result = ctxt.getContextValue(String.class, "second");
- assertEquals(expected, result);
+ Assert.assertEquals(expected, result);
expected = "yi";
ctxt.setContextValue(expected, "second");
result = ctxt.getContextValue(String.class, "second");
- assertEquals(expected, result);
+ Assert.assertEquals(expected, result);
}
- private static class MyJAXXObject implements JAXXObject {
+ private static class MyJAXXObject extends DefaultJAXXContext implements JAXXObject {
public Object getObjectById(String id) {
return null;
@@ -105,28 +119,6 @@
public void firePropertyChange(String name, Object oldValue, Object newValue) {
}
- public void setContextValue(Object o) {
- }
-
- public void setContextValue(Object o, String name) {
- }
-
- public <T> T getContextValue(Class<T> clazz) {
- return null;
- }
-
- public <T> T getContextValue(Class<T> clazz, String name) {
- return null;
- }
-
- public <O extends Container> O getParentContainer(Class<O> clazz) {
- return null;
- }
-
- public <O extends Container> O getParentContainer(Object top, Class<O> clazz) {
- return null;
- }
-
public BeanValidator<?> getValidator(String validatorId) {
return null;
}
Modified: lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/UtilTest.java
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/UtilTest.java 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/java/jaxx/runtime/UtilTest.java 2008-11-02 18:12:23 UTC (rev 1011)
@@ -1,20 +1,24 @@
package jaxx.runtime;
+import org.junit.Assert;
+import org.junit.Test;
+
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
-public class UtilTest extends junit.framework.TestCase {
- private int count;
+public class UtilTest {
+ int count;
+ @Test
public void testGetEventListener() {
count = 0;
DocumentListener listener = (DocumentListener) jaxx.runtime.Util.getEventListener(javax.swing.event.DocumentListener.class, this, "incCount");
listener.insertUpdate(null);
- assertEquals(count, 1);
+ Assert.assertEquals(count, 1);
DocumentListener listener2 = (DocumentListener) jaxx.runtime.Util.getEventListener(javax.swing.event.DocumentListener.class, this, "incCount");
listener2.removeUpdate(null);
- assertEquals(count, 2);
+ Assert.assertEquals(count, 2);
//assertTrue("Received two different event listeners despite using identical parameters", listener == listener2);
}
Modified: lutinjaxx/trunk/jaxx-core/src/test/resources/log4j.properties
===================================================================
--- lutinjaxx/trunk/jaxx-core/src/test/resources/log4j.properties 2008-10-30 22:05:12 UTC (rev 1010)
+++ lutinjaxx/trunk/jaxx-core/src/test/resources/log4j.properties 2008-11-02 18:12:23 UTC (rev 1011)
@@ -5,5 +5,4 @@
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) %M - %m%n
-#log4j.logger.org.codelutin.jaxx=DEBUG
-#log4j.logger.jaxx=DEBUG
+log4j.logger.jaxx=DEBUG
1
0