diff options
Diffstat (limited to 'test')
3 files changed, 162 insertions, 0 deletions
diff --git a/test/com/isode/stroke/parser/payloadparsers/IdleParserTest.java b/test/com/isode/stroke/parser/payloadparsers/IdleParserTest.java new file mode 100644 index 0000000..cf7df32 --- /dev/null +++ b/test/com/isode/stroke/parser/payloadparsers/IdleParserTest.java @@ -0,0 +1,48 @@ +/* Copyright (c) 2016, Isode Limited, London, England. + * All rights reserved. + * + * Acquisition and use of this software and related materials for any + * purpose requires a written license agreement from Isode Limited, + * or a written license from an organisation licensed by Isode Limited + * to grant such a license. + * + */ +package com.isode.stroke.parser.payloadparsers; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +import com.isode.stroke.base.DateTime; +import com.isode.stroke.elements.Idle; +import com.isode.stroke.elements.Presence; +import com.isode.stroke.parser.PresenceParser; +import com.isode.stroke.parser.StanzaParserTester; + +/** + * Test for {@link IdleParser} + */ +public class IdleParserTest { + + @Test + public void testParse_XepWhatever_Example1() { + PresenceParser testling = new PresenceParser(new FullPayloadParserFactoryCollection()); + StanzaParserTester<PresenceParser> parser = new StanzaParserTester<PresenceParser>(testling); + assertTrue(parser.parse( + "<presence from='juliet@capulet.com/balcony'>\n" + +"<show>away</show>\n" + +"<idle xmlns='urn:xmpp:idle:1' since='1969-07-21T02:56:15Z'/>\n" + +"</presence>\n" + )); + + Presence presence = testling.getStanzaGeneric(); + assertNotNull(presence); + + Idle idle = presence.getPayload(new Idle()); + assertNotNull(idle); + assertEquals(DateTime.stringToDate("1969-07-21T02:56:15Z"),idle.getSince()); + } + +} diff --git a/test/com/isode/stroke/serializer/XMPPSerializerTest.java b/test/com/isode/stroke/serializer/XMPPSerializerTest.java new file mode 100644 index 0000000..1c86034 --- /dev/null +++ b/test/com/isode/stroke/serializer/XMPPSerializerTest.java @@ -0,0 +1,80 @@ +/* Copyright (c) 2016, Isode Limited, London, England. + * All rights reserved. + * + * Acquisition and use of this software and related materials for any + * purpose requires a written license agreement from Isode Limited, + * or a written license from an organisation licensed by Isode Limited + * to grant such a license. + * + */ +package com.isode.stroke.serializer; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +import com.isode.stroke.elements.ProtocolHeader; +import com.isode.stroke.elements.StreamType; +import com.isode.stroke.serializer.payloadserializers.FullPayloadSerializerCollection; + +/** + * + */ +public class XMPPSerializerTest { + + private final PayloadSerializerCollection payloadSerializerCollection = + new FullPayloadSerializerCollection(); + + @Test + public void testSerializeHeader_Client() { + XMPPSerializer testling = createSerializer(StreamType.ClientStreamType); + ProtocolHeader protocolHeader = new ProtocolHeader(); + protocolHeader.setFrom("bla@foo.com"); + protocolHeader.setTo("foo.com"); + protocolHeader.setID("myid"); + protocolHeader.setVersion("0.99"); + + assertEquals("<?xml version=\"1.0\"?>" + + "<stream:stream xmlns=\"jabber:client\" " + + "xmlns:stream=\"http://etherx.jabber.org/streams\" " + + "from=\"bla@foo.com\" to=\"foo.com\" id=\"myid\" version=\"0.99\">", + testling.serializeHeader(protocolHeader)); + } + + @Test + public void testSerializeHeader_Component() { + XMPPSerializer testling = createSerializer(StreamType.ComponentStreamType); + ProtocolHeader protocolHeader = new ProtocolHeader(); + protocolHeader.setFrom("bla@foo.com"); + protocolHeader.setTo("foo.com"); + protocolHeader.setID("myid"); + protocolHeader.setVersion("0.99"); + + assertEquals("<?xml version=\"1.0\"?>" + + "<stream:stream xmlns=\"jabber:component:accept\" " + + "xmlns:stream=\"http://etherx.jabber.org/streams\" " + + "from=\"bla@foo.com\" to=\"foo.com\" id=\"myid\" version=\"0.99\">", + testling.serializeHeader(protocolHeader)); + } + + @Test + public void testSerializeHeader_Server() { + XMPPSerializer testling = createSerializer(StreamType.ServerStreamType); + ProtocolHeader protocolHeader = new ProtocolHeader(); + protocolHeader.setFrom("bla@foo.com"); + protocolHeader.setTo("foo.com"); + protocolHeader.setID("myid"); + protocolHeader.setVersion("0.99"); + + assertEquals("<?xml version=\"1.0\"?>" + + "<stream:stream xmlns=\"jabber:server\" " + + "xmlns:stream=\"http://etherx.jabber.org/streams\" " + + "from=\"bla@foo.com\" to=\"foo.com\" id=\"myid\" version=\"0.99\">", + testling.serializeHeader(protocolHeader)); + } + + private XMPPSerializer createSerializer(StreamType type) { + return new XMPPSerializer(payloadSerializerCollection, type, false); + } + +} diff --git a/test/com/isode/stroke/serializer/payloadserializers/IdleSerializerTest.java b/test/com/isode/stroke/serializer/payloadserializers/IdleSerializerTest.java new file mode 100644 index 0000000..6a50f01 --- /dev/null +++ b/test/com/isode/stroke/serializer/payloadserializers/IdleSerializerTest.java @@ -0,0 +1,34 @@ +/* Copyright (c) 2016, Isode Limited, London, England. + * All rights reserved. + * + * Acquisition and use of this software and related materials for any + * purpose requires a written license agreement from Isode Limited, + * or a written license from an organisation licensed by Isode Limited + * to grant such a license. + * + */ +package com.isode.stroke.serializer.payloadserializers; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +import com.isode.stroke.base.DateTime; +import com.isode.stroke.elements.Idle; + +/** + * Test for {@link IdleSerializer} + * + */ +public class IdleSerializerTest { + + @Test + public void testSerialize() { + IdleSerializer testling = new IdleSerializer(); + Idle idle = new Idle(DateTime.stringToDate("1969-07-21T02:56:15Z")); + + assertEquals("<idle xmlns='urn:xmpp:idle:1' since='1969-07-21T02:56:15Z'/>", + testling.serialize(idle)); + } + +} |