summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'test/com/isode/stroke/parser/payloadparsers/FormParserTest.java')
-rw-r--r--test/com/isode/stroke/parser/payloadparsers/FormParserTest.java81
1 files changed, 41 insertions, 40 deletions
diff --git a/test/com/isode/stroke/parser/payloadparsers/FormParserTest.java b/test/com/isode/stroke/parser/payloadparsers/FormParserTest.java
index 5dace99..4ab8190 100644
--- a/test/com/isode/stroke/parser/payloadparsers/FormParserTest.java
+++ b/test/com/isode/stroke/parser/payloadparsers/FormParserTest.java
@@ -1,12 +1,11 @@
/*
- * Copyright (c) 2012 Isode Limited, London, England.
+ * Copyright (c) 2012-2014 Isode Limited, London, England.
* All rights reserved.
*/
/*
* Copyright (c) 2010 Remko Tronçon
* All rights reserved.
*/
-
package com.isode.stroke.parser.payloadparsers;
import static org.junit.Assert.assertEquals;
@@ -16,16 +15,8 @@ import org.junit.BeforeClass;
import org.junit.Test;
import com.isode.stroke.elements.Form;
-import com.isode.stroke.elements.Payload;
import com.isode.stroke.elements.Form.Type;
-import com.isode.stroke.elements.FormField.BooleanFormField;
-import com.isode.stroke.elements.FormField.FixedFormField;
-import com.isode.stroke.elements.FormField.HiddenFormField;
-import com.isode.stroke.elements.FormField.JIDMultiFormField;
-import com.isode.stroke.elements.FormField.ListMultiFormField;
-import com.isode.stroke.elements.FormField.ListSingleFormField;
-import com.isode.stroke.elements.FormField.TextMultiFormField;
-import com.isode.stroke.elements.FormField.TextSingleFormField;
+import com.isode.stroke.elements.Payload;
import com.isode.stroke.eventloop.DummyEventLoop;
import com.isode.stroke.jid.JID;
@@ -73,6 +64,16 @@ public class FormParserTest {
+ "<field type=\"hidden\" var=\"FORM_TYPE\">"
+ "<value>jabber:bot</value>"
+ "</field>"
+ + "<reported>"
+ + "<field var=\"field name\" label=\"description\" type=\"unknown\">"
+ + "<value>someText</value>"
+ + "</field>"
+ + "</reported>"
+ + "<item>"
+ + "<field label=\"itemField\">"
+ + "<value>itemValue</value>"
+ + "</field>"
+ + "</item>"
+ "<field type=\"fixed\"><value>Section 1: Bot Info</value></field>"
+ "<field label=\"The name of your bot\" type=\"text-single\" var=\"botname\"/>"
+ "<field label=\"Helpful description of your bot\" type=\"text-multi\" var=\"description\"><value>This is a bot.</value><value>A quite good one actually</value></field>"
@@ -103,57 +104,57 @@ public class FormParserTest {
+ "<desc>Tell all your friends about your new bot!</desc>"
+ "<value>foo@bar.com</value>" + "<value>baz@fum.org</value>"
+ "</field>" + "<field var=\"untyped\">" + "<value>foo</value>"
- + "</field>" + "</x>");
+ + "</field>"
+ + "</x>");
+
+
assertEquals(10, payload.getFields().size());
- assertEquals("jabber:bot", ((HiddenFormField) (payload.getFields()
- .get(0))).getValue());
+
+ assertEquals("jabber:bot", payload.getFields().get(0).getValues().get(0));
+
assertEquals("FORM_TYPE", payload.getFields().get(0).getName());
assertTrue(!payload.getFields().get(0).getRequired());
+
+ assertEquals("description", payload.getReportedFields().get(0).getLabel());
+ assertEquals("someText", payload.getReportedFields().get(0).getValues().get(0));
+ assertEquals("itemField", payload.getItems().get(0).getItemFields().get(0).getLabel());
+ assertEquals("itemValue", payload.getItems().get(0).getItemFields().get(0).getValues().get(0));
- assertEquals("Section 1: Bot Info", ((FixedFormField) (payload
- .getFields().get(1))).getValue());
+ assertEquals("Section 1: Bot Info", payload.getFields().get(1).getValues().get(0));
assertEquals("The name of your bot", payload.getFields().get(2)
.getLabel());
assertEquals("This is a bot.\nA quite good one actually",
- ((TextMultiFormField) (payload.getFields().get(3))).getValue());
+ payload.getFields().get(3).getTextMultiValue());
- assertEquals(Boolean.TRUE, ((BooleanFormField) (payload.getFields()
- .get(4))).getValue());
+ assertEquals(Boolean.TRUE, payload.getFields()
+ .get(4).getBoolValue());
assertTrue(payload.getFields().get(4).getRequired());
- assertEquals("1", ((BooleanFormField) (payload.getFields().get(4)))
- .getRawValues().get(0));
+ assertEquals("1", payload.getFields().get(4).getValues().get(0));
- assertEquals("news",
- ((ListMultiFormField) (payload.getFields().get(6))).getValue()
- .get(0));
- assertEquals("news", payload.getFields().get(6).getRawValues().get(0));
- assertEquals("search", ((ListMultiFormField) (payload.getFields()
- .get(6))).getValue().get(1));
- assertEquals("search", payload.getFields().get(6).getRawValues().get(1));
+ assertEquals("news", payload.getFields().get(6).getValues().get(0));
+ assertEquals("search", payload.getFields().get(6).getValues().get(1));
assertEquals(5, payload.getFields().get(6).getOptions().size());
assertEquals("Contests",
- payload.getFields().get(6).getOptions().get(0).label);
+ payload.getFields().get(6).getOptions().get(0).label_);
assertEquals("contests",
- payload.getFields().get(6).getOptions().get(0).value);
+ payload.getFields().get(6).getOptions().get(0).value_);
assertEquals("News",
- payload.getFields().get(6).getOptions().get(1).label);
+ payload.getFields().get(6).getOptions().get(1).label_);
assertEquals("news",
- payload.getFields().get(6).getOptions().get(1).value);
+ payload.getFields().get(6).getOptions().get(1).value_);
- assertEquals("20", ((ListSingleFormField) (payload.getFields().get(7)))
- .getValue());
+ assertEquals("20", payload.getFields().get(7).getValues().get(0));
- assertEquals(new JID("foo@bar.com"), ((JIDMultiFormField) (payload
- .getFields().get(8))).getValue().get(0));
- assertEquals(new JID("baz@fum.org"), ((JIDMultiFormField) (payload
- .getFields().get(8))).getValue().get(1));
+ assertEquals(new JID("foo@bar.com"), payload
+ .getFields().get(8).getJIDMultiValue(0));
+ assertEquals(new JID("baz@fum.org"), payload
+ .getFields().get(8).getJIDMultiValue(1));
assertEquals("Tell all your friends about your new bot!", payload
.getFields().get(8).getDescription());
- assertEquals("foo",
- ((TextSingleFormField) (payload.getFields().get(9))).getValue());
+ assertEquals("foo", payload.getFields().get(9).getValues().get(0));
}
} \ No newline at end of file