You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2017/10/17 20:44:30 UTC
[16/20] wicket git commit: WICKET-6105 split tests
WICKET-6105 split tests
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/a4aed9e3
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/a4aed9e3
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/a4aed9e3
Branch: refs/heads/master
Commit: a4aed9e35a6055d627960a58eee40e29d84c461d
Parents: 0a4b5f2
Author: Sven Meier <sv...@apache.org>
Authored: Mon Oct 16 08:57:43 2017 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Tue Oct 17 22:32:40 2017 +0200
----------------------------------------------------------------------
.../html/form/datetime/DateTimeFieldTest.java | 200 +++++--------------
.../form/datetime/LocalDateTextFieldTest.java | 89 +++++++++
.../html/form/datetime/TimeFieldTest.java | 107 ++++++++++
3 files changed, 242 insertions(+), 154 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/a4aed9e3/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/DateTimeFieldTest.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/DateTimeFieldTest.java b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/DateTimeFieldTest.java
index 64efda6..8296ad6 100644
--- a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/DateTimeFieldTest.java
+++ b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/DateTimeFieldTest.java
@@ -16,19 +16,15 @@
*/
package org.apache.wicket.extensions.markup.html.form.datetime;
-import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
-import java.time.format.FormatStyle;
import java.util.Locale;
import org.apache.wicket.MarkupContainer;
import org.apache.wicket.markup.IMarkupResourceStreamProvider;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.markup.html.form.FormComponent;
-import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.util.convert.converter.LocalDateConverter;
import org.apache.wicket.util.resource.IResourceStream;
@@ -39,200 +35,96 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
-public class DateTimeFieldTest extends WicketTestCase {
+/**
+ * Test for {@link LocalDateTimeField}.
+ */
+public class DateTimeFieldTest extends WicketTestCase
+{
@Rule
public ExpectedException expectedException = ExpectedException.none();
@Test
- public void timeNullTest() {
- TestTimePage page = new TestTimePage(null);
- tester.startPage(page);
- FormTester formTester = tester.newFormTester("form", false);
- formTester.submit();
- assertNull(page.field.getModelObject());
- }
-
- @Test
- public void timeNullHoursTest() {
- TestTimePage page = new TestTimePage(null);
- tester.startPage(page);
- FormTester formTester = tester.newFormTester("form", false);
- formTester.setValue("field:minutes", "8");
- formTester.submit();
- assertNull(page.field.getModelObject());
- }
-
- @Test
- public void timeNullMinutesTest() {
- TestTimePage page = new TestTimePage(null);
- tester.startPage(page);
- FormTester formTester = tester.newFormTester("form", false);
- formTester.setValue("field:hours", "8");
- formTester.submit();
- assertNull(page.field.getModelObject());
- }
-
- @Test
- public void timeNotNullTest() {
- TestTimePage page = new TestTimePage(LocalTime.of(6, 15));
- tester.startPage(page);
- FormTester formTester = tester.newFormTester("form", false);
- formTester.setValue("field:hours", "8");
- formTester.submit();
- LocalTime t = page.field.getModelObject();
- assertNotNull(t);
- assertEquals(8, t.getHour());
- assertEquals(15, t.getMinute());
- }
-
- @Test
- public void dateNullTest() {
- TestDatePage page = new TestDatePage(null);
- tester.startPage(page);
- FormTester formTester = tester.newFormTester("form", false);
- formTester.submit();
- assertNull(page.field.getModelObject());
- }
-
- @Test
- public void dateNotNullTest() {
- LocalDate date = LocalDate.of(2017, 02, 13);
- TestDatePage page = new TestDatePage(null);
- tester.startPage(page);
- FormTester formTester = tester.newFormTester("form", false);
- formTester.setValue("field", new LocalDateConverter().convertToString(date, Locale.forLanguageTag("en-US")));
- formTester.submit();
- LocalDate d = page.field.getModelObject();
- assertNotNull(d);
- assertEquals(date, d);
- }
-
- @Test
- public void dateTimeNullTest() {
- TestDateTimePage page = new TestDateTimePage(null);
+ public void dateTimeNull()
+ {
+ TestPage page = new TestPage(null);
tester.startPage(page);
FormTester formTester = tester.newFormTester("form", false);
formTester.submit();
+ tester.assertNoErrorMessage();
assertNull(page.field.getModelObject());
}
@Test
- public void dateTimeNullTest1() {
+ public void timeEmpty()
+ {
LocalDate date = LocalDate.of(2017, 02, 13);
- TestDateTimePage page = new TestDateTimePage(null);
+ TestPage page = new TestPage(null);
tester.startPage(page);
FormTester formTester = tester.newFormTester("form", false);
- formTester.setValue("field:date", new LocalDateConverter().convertToString(date, Locale.forLanguageTag("en-US")));
+ formTester.setValue("field:date",
+ new LocalDateConverter().convertToString(date, Locale.forLanguageTag("en-US")));
formTester.submit();
- assertNull(page.field.getModelObject());
+ tester.assertNoErrorMessage();
+ assertEquals(LocalDateTime.of(date, LocalTime.of(12, 0)), page.field.getModelObject());
}
@Test
- public void dateTimeNullTest2() {
- TestDateTimePage page = new TestDateTimePage(null);
+ public void dateEmpty()
+ {
+ TestPage page = new TestPage(null);
tester.startPage(page);
FormTester formTester = tester.newFormTester("form", false);
formTester.setValue("field:time:hours", "6");
formTester.setValue("field:time:minutes", "15");
formTester.select("field:time:amOrPmChoice", 0);
formTester.submit();
- assertNull(page.field.getModelObject());
+ tester.assertErrorMessages("The value of 'field' is not a valid LocalDateTime.");
}
@Test
- public void dateTimeNotNullTest() {
+ public void dateTimeNotEmpty()
+ {
LocalDate date = LocalDate.of(2017, 02, 13);
- TestDateTimePage page = new TestDateTimePage(null);
+ TestPage page = new TestPage(null);
tester.startPage(page);
FormTester formTester = tester.newFormTester("form", false);
- formTester.setValue("field:date", new LocalDateConverter().convertToString(date, Locale.forLanguageTag("en-US")));
+ formTester.setValue("field:date",
+ new LocalDateConverter().convertToString(date, Locale.forLanguageTag("en-US")));
formTester.setValue("field:time:hours", "6");
formTester.setValue("field:time:minutes", "15");
formTester.select("field:time:amOrPmChoice", 0);
formTester.submit();
- assertNotNull(page.field.getModelObject());
- assertEquals(LocalDateTime.of(date, LocalTime.of(6, 15)), page.field.getModelObject());
- }
-
- public static class TestDateTimePage extends TestPage<LocalDateTime>
- {
- private static final long serialVersionUID = 1L;
-
- TestDateTimePage(LocalDateTime val)
- {
- super(val);
- }
-
- @Override
- FormComponent<LocalDateTime> newComponent()
- {
- return new LocalDateTimeField("field", model);
- }
- }
-
- public static class TestDatePage extends TestPage<LocalDate>
- {
- private static final long serialVersionUID = 1L;
-
- TestDatePage(LocalDate val)
- {
- super(val);
- tag = "input type=\"text\"";
- }
-
- @Override
- FormComponent<LocalDate> newComponent()
- {
- return new LocalDateTextField("field", model, FormatStyle.SHORT);
- }
+ tester.assertNoErrorMessage();
+ assertEquals(LocalDateTime.of(date, LocalTime.of(6, 15)), page.field.getModelObject());
}
- public static class TestTimePage extends TestPage<LocalTime>
+ public static class TestPage extends WebPage implements IMarkupResourceStreamProvider
{
private static final long serialVersionUID = 1L;
- TestTimePage(LocalTime val)
- {
- super(val);
- }
+ public LocalDateTimeField field;
- @Override
- FormComponent<LocalTime> newComponent()
- {
- return new TimeField("field", model);
- }
- }
-
- public abstract static class TestPage<T extends Serializable> extends WebPage implements IMarkupResourceStreamProvider
- {
- private static final long serialVersionUID = 1L;
- Form<Void> form;
- FormComponent<T> field;
- IModel<T> model = new Model<T>();
- String tag = "span";
-
- /** */
- public TestPage(T val)
- {
- add(form = new Form<>("form"));
- model.setObject(val);
- form.add(field = newComponent());
- }
-
- abstract FormComponent<T> newComponent();
-
- @Override
- public IResourceStream getMarkupResourceStream(MarkupContainer container, Class<?> containerClass)
+ TestPage(LocalDateTime val)
{
- return new StringResourceStream(String.format("<html><body>"
- + "<form wicket:id=\"form\"><%s wicket:id=\"field\"/></form></body></html>", tag));
+ Form<Void> form = new Form<>("form");
+ add(form);
+
+ form.add(field = new LocalDateTimeField("field", Model.of(val))
+ {
+ @Override
+ protected LocalTime getDefaultTime()
+ {
+ return LocalTime.NOON;
+ }
+ });
}
@Override
- protected void onDetach()
+ public IResourceStream getMarkupResourceStream(MarkupContainer container,
+ Class<?> containerClass)
{
- super.onDetach();
- model.detach();
+ return new StringResourceStream("<html><body>"
+ + "<form wicket:id=\"form\"><span wicket:id=\"field\"/></form></body></html>");
}
}
-}
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/wicket/blob/a4aed9e3/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/LocalDateTextFieldTest.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/LocalDateTextFieldTest.java b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/LocalDateTextFieldTest.java
new file mode 100644
index 0000000..1d50158
--- /dev/null
+++ b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/LocalDateTextFieldTest.java
@@ -0,0 +1,89 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.extensions.markup.html.form.datetime;
+
+import java.time.LocalDate;
+import java.time.format.FormatStyle;
+import java.util.Locale;
+
+import org.apache.wicket.MarkupContainer;
+import org.apache.wicket.markup.IMarkupResourceStreamProvider;
+import org.apache.wicket.markup.html.WebPage;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.util.convert.converter.LocalDateConverter;
+import org.apache.wicket.util.resource.IResourceStream;
+import org.apache.wicket.util.resource.StringResourceStream;
+import org.apache.wicket.util.tester.FormTester;
+import org.apache.wicket.util.tester.WicketTestCase;
+import org.junit.Test;
+
+/**
+ * Test for {@link LocalDateTextField}.
+ */
+public class LocalDateTextFieldTest extends WicketTestCase
+{
+
+ @Test
+ public void dateNullTest()
+ {
+ TestPage page = new TestPage(null);
+ tester.startPage(page);
+ FormTester formTester = tester.newFormTester("form", false);
+ formTester.submit();
+ tester.assertNoErrorMessage();
+ assertNull(page.field.getModelObject());
+ }
+
+ @Test
+ public void dateNotNullTest()
+ {
+ LocalDate date = LocalDate.of(2017, 02, 13);
+ TestPage page = new TestPage(null);
+ tester.startPage(page);
+ FormTester formTester = tester.newFormTester("form", false);
+ formTester.setValue("field",
+ new LocalDateConverter().convertToString(date, Locale.forLanguageTag("en-US")));
+ formTester.submit();
+ tester.assertNoErrorMessage();
+ LocalDate d = page.field.getModelObject();
+ assertEquals(date, d);
+ }
+
+ public static class TestPage extends WebPage implements IMarkupResourceStreamProvider
+ {
+ private static final long serialVersionUID = 1L;
+
+ public LocalDateTextField field;
+
+ TestPage(LocalDate val)
+ {
+ Form<Void> form = new Form<>("form");
+ add(form);
+
+ form.add(field = new LocalDateTextField("field", Model.of(val), FormatStyle.SHORT));
+ }
+
+ @Override
+ public IResourceStream getMarkupResourceStream(MarkupContainer container,
+ Class<?> containerClass)
+ {
+ return new StringResourceStream("<html><body>"
+ + "<form wicket:id=\"form\"><input wicket:id=\"field\"/></form></body></html>");
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/wicket/blob/a4aed9e3/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/TimeFieldTest.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/TimeFieldTest.java b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/TimeFieldTest.java
new file mode 100644
index 0000000..1d698b0
--- /dev/null
+++ b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/datetime/TimeFieldTest.java
@@ -0,0 +1,107 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.extensions.markup.html.form.datetime;
+
+import java.time.LocalTime;
+
+import org.apache.wicket.MarkupContainer;
+import org.apache.wicket.markup.IMarkupResourceStreamProvider;
+import org.apache.wicket.markup.html.WebPage;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.util.resource.IResourceStream;
+import org.apache.wicket.util.resource.StringResourceStream;
+import org.apache.wicket.util.tester.FormTester;
+import org.apache.wicket.util.tester.WicketTestCase;
+import org.junit.Test;
+
+/**
+ * Test for {@link TimeField}.
+ */
+public class TimeFieldTest extends WicketTestCase
+{
+
+ @Test
+ public void timeNull()
+ {
+ TestPage page = new TestPage(null);
+ tester.startPage(page);
+ FormTester formTester = tester.newFormTester("form", false);
+ formTester.submit();
+ tester.assertNoErrorMessage();
+ assertNull(page.field.getModelObject());
+ }
+
+ @Test
+ public void timeEmptyHours()
+ {
+ TestPage page = new TestPage(null);
+ tester.startPage(page);
+ FormTester formTester = tester.newFormTester("form", false);
+ formTester.setValue("field:minutes", "8");
+ formTester.submit();
+ tester.assertErrorMessages("The value of 'field' is not a valid LocalTime.");
+ }
+
+ @Test
+ public void timeEmptyMinutes()
+ {
+ TestPage page = new TestPage(null);
+ tester.startPage(page);
+ FormTester formTester = tester.newFormTester("form", false);
+ formTester.setValue("field:hours", "8");
+ formTester.submit();
+ tester.assertErrorMessages("The value of 'field' is not a valid LocalTime.");
+ }
+
+ @Test
+ public void timeNotNull()
+ {
+ TestPage page = new TestPage(LocalTime.of(6, 15));
+ tester.startPage(page);
+ FormTester formTester = tester.newFormTester("form", false);
+ formTester.setValue("field:hours", "8");
+ formTester.submit();
+ LocalTime t = page.field.getModelObject();
+ assertNotNull(t);
+ assertEquals(8, t.getHour());
+ assertEquals(15, t.getMinute());
+ }
+
+ public static class TestPage extends WebPage implements IMarkupResourceStreamProvider
+ {
+ private static final long serialVersionUID = 1L;
+
+ public TimeField field;
+
+ TestPage(LocalTime val)
+ {
+ Form<Void> form = new Form<>("form");
+ add(form);
+
+ form.add(field = new TimeField("field", Model.of(val)));
+ }
+
+ @Override
+ public IResourceStream getMarkupResourceStream(MarkupContainer container,
+ Class<?> containerClass)
+ {
+ return new StringResourceStream("<html><body>"
+ + "<form wicket:id=\"form\"><span wicket:id=\"field\"/></form></body></html>");
+ }
+ }
+}