diff options
Diffstat (limited to 'test/com/isode/stroke/serializer')
-rw-r--r-- | test/com/isode/stroke/serializer/payloadserializers/FormSerializerTest.java | 109 | ||||
-rw-r--r-- | test/com/isode/stroke/serializer/payloadserializers/MAMQuerySerializerTest.java | 5 |
2 files changed, 79 insertions, 35 deletions
diff --git a/test/com/isode/stroke/serializer/payloadserializers/FormSerializerTest.java b/test/com/isode/stroke/serializer/payloadserializers/FormSerializerTest.java index 7636eb4..7b16aa4 100644 --- a/test/com/isode/stroke/serializer/payloadserializers/FormSerializerTest.java +++ b/test/com/isode/stroke/serializer/payloadserializers/FormSerializerTest.java @@ -1,36 +1,23 @@ /* - * 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.serializer.payloadserializers; import static org.junit.Assert.assertEquals; -import java.util.ArrayList; -import java.util.List; - import org.junit.BeforeClass; import org.junit.Test; import com.isode.stroke.elements.Form; -import com.isode.stroke.elements.FormField; 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; import com.isode.stroke.elements.FormField.Option; -import com.isode.stroke.elements.FormField.TextMultiFormField; -import com.isode.stroke.elements.FormField.TextPrivateFormField; -import com.isode.stroke.elements.FormField.TextSingleFormField; -import com.isode.stroke.jid.JID; +import com.isode.stroke.elements.FormItem; public class FormSerializerTest { @BeforeClass @@ -58,38 +45,51 @@ public class FormSerializerTest { FormSerializer testling = new FormSerializer(); Form form = new Form(Type.FORM_TYPE); - FormField field = HiddenFormField.create("jabber:bot"); + FormField field = new FormField(FormField.Type.UNKNOWN_TYPE); + field.setName("field name"); + field.setLabel("description"); + field.addValue("someText"); + form.addReportedField(field); + + FormItem item = new FormItem(); + field = new FormField(FormField.Type.UNKNOWN_TYPE); + field.setName("itemField"); + field.addValue("itemValue"); + item.addItemField(field); + form.addItem(item); + + field = new FormField(FormField.Type.HIDDEN_TYPE, "jabber:bot"); field.setName("FORM_TYPE"); form.addField(field); + + form.addField(new FormField(FormField.Type.FIXED_TYPE, "Section 1: Bot Info")); - form.addField(FixedFormField.create("Section 1: Bot Info")); - - field = TextSingleFormField.create(); + field = new FormField(FormField.Type.TEXT_SINGLE_TYPE); field.setName("botname"); field.setLabel("The name of your bot"); form.addField(field); - field = TextMultiFormField - .create("This is a bot.\nA quite good one actually"); + field = new FormField(FormField.Type.TEXT_MULTI_TYPE, + "This is a bot.\nA quite good one actually"); field.setName("description"); field.setLabel("Helpful description of your bot"); form.addField(field); - field = BooleanFormField.create(true); + field = new FormField(FormField.Type.BOOLEAN_TYPE); + field.setBoolValue(true); field.setName("public"); field.setLabel("Public bot?"); field.setRequired(true); form.addField(field); - field = TextPrivateFormField.create(); + field = new FormField(FormField.Type.TEXT_PRIVATE_TYPE); field.setName("password"); field.setLabel("Password for special access"); form.addField(field); - List<String> values = new ArrayList<String>(); - values.add("news"); - values.add("search"); - field = ListMultiFormField.create(values); + field = new FormField(FormField.Type.LIST_MULTI_TYPE); + field.addValue("news"); + field.addValue("search"); field.setName("features"); field.setLabel("What features will the bot support?"); field.addOption(new Option("Contests", "contests")); @@ -99,7 +99,7 @@ public class FormSerializerTest { field.addOption(new Option("Search", "search")); form.addField(field); - field = ListSingleFormField.create("20"); + field = new FormField(FormField.Type.LIST_SINGLE_TYPE, "20"); field.setName("maxsubs"); field.setLabel("Maximum number of subscribers"); field.addOption(new Option("10", "10")); @@ -109,11 +109,18 @@ public class FormSerializerTest { field.addOption(new Option("100", "100")); field.addOption(new Option("", "none")); form.addField(field); + + String jid = "user@example.com"; + field = new FormField(FormField.Type.JID_SINGLE_TYPE); + field.addValue(jid); + field.setName("jidSingle"); + field.setLabel("jidSingleLabel"); + field.setDescription("jidSingleDescription"); + form.addField(field); - List<JID> jids = new ArrayList<JID>(); - jids.add(new JID("foo@bar.com")); - jids.add(new JID("baz@fum.org")); - field = JIDMultiFormField.create(jids); + field = new FormField(FormField.Type.JID_MULTI_TYPE); + field.addValue("foo@bar.com"); + field.addValue("baz@fum.org"); field.setName("invitelist"); field.setLabel("People to invite"); field.setDescription("Tell all your friends about your new bot!"); @@ -121,6 +128,16 @@ public class FormSerializerTest { assertEquals( "<x type=\"form\" xmlns=\"jabber:x:data\">" + + "<reported>" + + "<field label=\"description\" type=\"unknown\" var=\"field name\">" + + "<value>someText</value>" + + "</field>" + + "</reported>" + + "<item>" + + "<field var=\"itemField\">" + + "<value>itemValue</value>" + + "</field>" + + "</item>" + "<field type=\"hidden\" var=\"FORM_TYPE\">" + "<value>jabber:bot</value>" + "</field>" @@ -150,10 +167,36 @@ public class FormSerializerTest { + "<option label=\"100\"><value>100</value></option>" + "<option><value>none</value></option>" + "</field>" + + "<field label=\"jidSingleLabel\" type=\"jid-single\" var=\"jidSingle\">" + + "<desc>jidSingleDescription</desc>" + + "<value>user@example.com</value>" + + "</field>" + "<field label=\"People to invite\" type=\"jid-multi\" var=\"invitelist\">" + "<desc>Tell all your friends about your new bot!</desc>" + "<value>foo@bar.com</value>" + "<value>baz@fum.org</value>" + "</field>" + "</x>", + + /* + + "<field label=\"booleanField\" type=\"boolean\"><value>0</value></field>" + + "<field label=\"fixedField\" type=\"fixed\"><value>Fixed></value></field>" + + "<field label=\"hiddenField\" type=\"hidden\"/>" + + "<field label=\"listSingleField\" type=\"list-single\">" + + "<option label=\"option1\"><value>listVal</value></option>" + + "<option label=\"option2\"><value>listVal</value></option>" + + "<option label=\"option3\"><value>listVal</value></option>" + + "</field>" + + "<field label=\"listMultiField\" type=\"list-multi\">" + + "<option label=\"option1\"><value>listVal</value></option>" + + "<option label=\"option1\"><value>listVal</value></option>" + + "<option label=\"option1\"><value>listVal</value></option>" + + "</field>" + + "<field label=\"textPrivateField\" type=\"text-private\"><value>textPrivateVal</value></field>" + + "<field label=\"textMultiField\" type=\"text-multi\">" + + "" + + "" + + "" + + "</field>" + */ testling.serialize(form)); } } diff --git a/test/com/isode/stroke/serializer/payloadserializers/MAMQuerySerializerTest.java b/test/com/isode/stroke/serializer/payloadserializers/MAMQuerySerializerTest.java index ab4a3fa..519b981 100644 --- a/test/com/isode/stroke/serializer/payloadserializers/MAMQuerySerializerTest.java +++ b/test/com/isode/stroke/serializer/payloadserializers/MAMQuerySerializerTest.java @@ -13,6 +13,7 @@ package com.isode.stroke.serializer.payloadserializers; import org.junit.Test; import com.isode.stroke.elements.Form; import com.isode.stroke.elements.FormField; +import com.isode.stroke.elements.FormField.Type; import com.isode.stroke.elements.MAMQuery; import com.isode.stroke.elements.ResultSet; import static org.junit.Assert.assertEquals; @@ -25,11 +26,11 @@ public class MAMQuerySerializerTest { Form parameters = new Form(); - FormField.TextSingleFormField fieldType = FormField.TextSingleFormField.create("urn:xmpp:mam:0"); + FormField fieldType = new FormField(Type.TEXT_SINGLE_TYPE, "urn:xmpp:mam:0"); fieldType.setName("FORM_TYPE"); parameters.addField(fieldType); - FormField.TextSingleFormField fieldStart = FormField.TextSingleFormField.create("2010-08-07T00:00:00Z"); + FormField fieldStart = new FormField(Type.TEXT_SINGLE_TYPE, "2010-08-07T00:00:00Z"); fieldStart.setName("start"); parameters.addField(fieldStart); |