|
From: <mai...@ce...> - 2009-03-14 20:53:31
|
From: Johannes Schneider <js...@ce...>
---
.../date/AbstractDateFieldBindingTestCase.java | 14 +++++++++++++-
.../swing/date/JCalendarDateFieldBinderTests.java | 7 ++++++-
.../date/JXDatePickerDateFieldBinderTests.java | 7 ++++++-
.../date/NachoCalendarDateFieldBinderTests.java | 8 ++++++--
4 files changed, 31 insertions(+), 5 deletions(-)
diff --git a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/AbstractDateFieldBindingTestCase.java b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/AbstractDateFieldBindingTestCase.java
index 2c1b1c6..614fa10 100644
--- a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/AbstractDateFieldBindingTestCase.java
+++ b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/AbstractDateFieldBindingTestCase.java
@@ -21,6 +21,7 @@ import java.util.HashMap;
import java.util.Map;
import javax.swing.JComponent;
+import javax.swing.JTextField;
import org.springframework.binding.form.FieldMetadata;
import org.springframework.richclient.form.binding.swing.BindingAbstractTests;
@@ -58,6 +59,15 @@ public abstract class AbstractDateFieldBindingTestCase extends BindingAbstractTe
assertNotNull(vm.getValue());
}
+ public void testNullValue() {
+ Date date = createDate(1981, 10, 16);
+ vm.setValue(date);
+
+ assertNotNull(vm.getValue());
+ setValue( dateField, "" );
+ assertNull( vm.getValue() );
+ }
+
private Date createDate(int year, int month, int day) {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month, day, 0, 0, 0);
@@ -88,11 +98,13 @@ public abstract class AbstractDateFieldBindingTestCase extends BindingAbstractTe
protected abstract void setValue(JComponent dateField, Date date);
+ protected abstract void setValue(JComponent dateField, String value);
+
public final void testComponentUpdatesValueModel() {
Date date1 = createDate(1981, 10, 16);
setValue(dateField, date1);
assertEquals(date1, (Date)vm.getValue());
- setValue(dateField, null);
+ setValue(dateField, (Date)null);
assertEquals(null, (Date)vm.getValue());
Date date2 = createDate(1999, 11, 31);
setValue(dateField, date2);
diff --git a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JCalendarDateFieldBinderTests.java b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JCalendarDateFieldBinderTests.java
index c01cafd..2c705fe 100644
--- a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JCalendarDateFieldBinderTests.java
+++ b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JCalendarDateFieldBinderTests.java
@@ -6,6 +6,7 @@ import java.util.Date;
import javax.swing.JComponent;
import com.toedter.calendar.JDateChooser;
+import net.sf.nachocalendar.components.DateField;
/**
* Testcase for <code>JCalendarDateFieldBinder</code> and
@@ -23,7 +24,11 @@ public class JCalendarDateFieldBinderTests extends AbstractDateFieldBindingTestC
return ((JDateChooser) dateField).getDate();
}
- protected boolean isReadOnly(JComponent dateField) {
+ protected void setValue( JComponent dateField, String value ) {
+ ( ( JDateChooser ) dateField ).getDateEditor().setDateFormatString( value );
+ }
+
+ protected boolean isReadOnly(JComponent dateField) {
return !((JDateChooser) dateField).isEnabled();
}
diff --git a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JXDatePickerDateFieldBinderTests.java b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JXDatePickerDateFieldBinderTests.java
index d313701..90a274a 100644
--- a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JXDatePickerDateFieldBinderTests.java
+++ b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/JXDatePickerDateFieldBinderTests.java
@@ -20,6 +20,7 @@ import java.util.Date;
import javax.swing.JComponent;
import org.jdesktop.swingx.JXDatePicker;
+import net.sf.nachocalendar.components.DateField;
/**
* Testcase for <code>JXDatePickerDateFieldBinder</code> and
@@ -37,7 +38,11 @@ public class JXDatePickerDateFieldBinderTests extends AbstractDateFieldBindingTe
return ((JXDatePicker) dateField).getDate();
}
- protected void setValue(JComponent dateField, Date date) {
+ protected void setValue( JComponent dateField, String value ) {
+ ( ( JXDatePicker ) dateField ).getEditor().setText( value );
+ }
+
+ protected void setValue(JComponent dateField, Date date) {
((JXDatePicker) dateField).setDate(date);
}
diff --git a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/NachoCalendarDateFieldBinderTests.java b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/NachoCalendarDateFieldBinderTests.java
index 6479444..d4f5956 100644
--- a/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/NachoCalendarDateFieldBinderTests.java
+++ b/spring-richclient-core/src/test/java/org/springframework/richclient/form/binding/swing/date/NachoCalendarDateFieldBinderTests.java
@@ -33,10 +33,14 @@ public class NachoCalendarDateFieldBinderTests extends AbstractDateFieldBindingT
}
protected Date getValue(JComponent dateField) {
- return (Date) ((DateField) dateField).getValue();
+ return (Date) ((NullableDateField) dateField).getValue();
}
- protected void setValue(JComponent dateField, Date date) {
+ protected void setValue( JComponent dateField, String value ) {
+ ( ( DateField ) dateField ).getFormattedTextField().setText( value );
+ }
+
+ protected void setValue(JComponent dateField, Date date) {
((DateField) dateField).setValue(date);
}
--
1.6.2
|