diff options
author | slewis | 2007-03-20 05:01:34 +0000 |
---|---|---|
committer | slewis | 2007-03-20 05:01:34 +0000 |
commit | 980b2735dc081f25611ac062a7186ba7ede24cbd (patch) | |
tree | 0cbcf0e24b97d47025cb012f34a6a265ac758765 /tests | |
parent | 9b9e61d967b518b427881eb0c5df894ae5c32571 (diff) | |
download | org.eclipse.ecf-980b2735dc081f25611ac062a7186ba7ede24cbd.tar.gz org.eclipse.ecf-980b2735dc081f25611ac062a7186ba7ede24cbd.tar.xz org.eclipse.ecf-980b2735dc081f25611ac062a7186ba7ede24cbd.zip |
Added more test cases for org.eclipse.ecf.tests.presence
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/AdapterAccessTest.java (renamed from tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceContainerTest.java) | 2 | ||||
-rwxr-xr-x | tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ChatTest.java | 140 | ||||
-rwxr-xr-x | tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ConnectTest.java (renamed from tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceContainerConnectTest.java) | 2 | ||||
-rwxr-xr-x | tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceAbstractTestCase.java | 7 |
4 files changed, 146 insertions, 5 deletions
diff --git a/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceContainerTest.java b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/AdapterAccessTest.java index fdb68c7a1..9c02efe63 100755 --- a/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceContainerTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/AdapterAccessTest.java @@ -23,7 +23,7 @@ import org.eclipse.ecf.tests.ContainerAbstractTestCase; /** * */ -public class PresenceContainerTest extends ContainerAbstractTestCase { +public class AdapterAccessTest extends ContainerAbstractTestCase { private static final String XMPP_CONTAINER = "ecf.xmpp.smack"; diff --git a/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ChatTest.java b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ChatTest.java new file mode 100755 index 000000000..3e66cb02a --- /dev/null +++ b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ChatTest.java @@ -0,0 +1,140 @@ +/**************************************************************************** + * Copyright (c) 2004 Composent, Inc. and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Composent, Inc. - initial API and implementation + *****************************************************************************/ + +package org.eclipse.ecf.tests.presence; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.eclipse.ecf.core.identity.ID; +import org.eclipse.ecf.core.identity.IDFactory; +import org.eclipse.ecf.presence.IIMMessageEvent; +import org.eclipse.ecf.presence.IIMMessageListener; +import org.eclipse.ecf.presence.im.IChatManager; +import org.eclipse.ecf.presence.im.IChatMessage; +import org.eclipse.ecf.presence.im.IChatMessageEvent; + +/** + * + */ +public class ChatTest extends PresenceAbstractTestCase { + + IChatManager chat0, chat1 = null; + public static final int WAITTIME = 3000; + + List<IChatMessage> receivedChatMessages = new ArrayList<IChatMessage>(); + + IIMMessageListener listener = new IIMMessageListener() { + public void handleMessageEvent(IIMMessageEvent messageEvent) { + if (messageEvent instanceof IChatMessageEvent) { + IChatMessage chatmessage = ((IChatMessageEvent) messageEvent) + .getChatMessage(); + System.out.println("received chat message=" + chatmessage); + receivedChatMessages.add(chatmessage); + } + } + }; + + /* + * (non-Javadoc) + * + * @see org.eclipse.ecf.tests.presence.PresenceAbstractTestCase#setUp() + */ + protected void setUp() throws Exception { + setClientCount(2); + clients = createClients(); + chat0 = getPresenceAdapter(0).getChatManager(); + chat1 = getPresenceAdapter(1).getChatManager(); + chat1.addMessageListener(listener); + for (int i = 0; i < 2; i++) { + connectClient(i); + } + } + + /* + * (non-Javadoc) + * + * @see junit.framework.TestCase#tearDown() + */ + protected void tearDown() throws Exception { + receivedChatMessages.clear(); + disconnectClients(); + } + + public void testSendIM() throws Exception { + chat0.getChatMessageSender().sendChatMessage(getServerConnectID(1), + "abcdef"); + sleep(WAITTIME); + assertHasEvent(receivedChatMessages, IChatMessage.class); + IChatMessage message = receivedChatMessages.get(0); + assertTrue(message.getBody().equals("abcdef")); + assertTrue(message.getType().equals(IChatMessage.Type.CHAT)); + ID fromID = message.getFromID(); + assertTrue(fromID.equals(getServerConnectID(0))); + assertNull(message.getSubject()); + Map props = message.getProperties(); + assertNotNull(props); + assertTrue(props.size() == 0); + } + + public void testSendIM2() throws Exception { + Map sendprops = new HashMap(); + sendprops.put("prop1", "this"); + ID sendthreadid = IDFactory.getDefault().createStringID("thread1"); + // Send the whole thing + chat0.getChatMessageSender().sendChatMessage(getServerConnectID(1), + sendthreadid, IChatMessage.Type.CHAT, "subject1", "uvwxyz", + sendprops); + sleep(WAITTIME); + + assertHasEvent(receivedChatMessages, IChatMessage.class); + IChatMessage message = receivedChatMessages.get(0); + // For some reason, the smack library doesn't seem to get this right. + // assertTrue(message.getThreadID().equals(sendthreadid)); + assertTrue(message.getSubject().equals("subject1")); + assertTrue(message.getBody().equals("uvwxyz")); + assertTrue(message.getType().equals(IChatMessage.Type.CHAT)); + ID fromID = message.getFromID(); + assertTrue(fromID.equals(getServerConnectID(0))); + Map props = message.getProperties(); + assertNotNull(props); + assertTrue(props.size() == 1); + String val = (String) props.get("prop1"); + assertNotNull(val); + assertEquals(val, "this"); + } + + public void testSendMessageProperties() throws Exception { + Map sendprops = new HashMap(); + sendprops.put("prop2", "that"); + // Send the whole thing + chat0.getChatMessageSender().sendChatMessage(getServerConnectID(1), + null, IChatMessage.Type.CHAT, null, null, sendprops); + sleep(WAITTIME); + + assertHasEvent(receivedChatMessages, IChatMessage.class); + IChatMessage message = receivedChatMessages.get(0); + assertNull(message.getSubject()); + assertTrue(message.getBody().equals("")); + assertTrue(message.getType().equals(IChatMessage.Type.CHAT)); + ID fromID = message.getFromID(); + assertTrue(fromID.equals(getServerConnectID(0))); + Map props = message.getProperties(); + assertNotNull(props); + assertTrue(props.size() == 1); + String val = (String) props.get("prop2"); + assertNotNull(val); + assertEquals(val, "that"); + } + +} diff --git a/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceContainerConnectTest.java b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ConnectTest.java index 6a6a74d04..8816c8c6a 100755 --- a/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceContainerConnectTest.java +++ b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ConnectTest.java @@ -17,7 +17,7 @@ import org.eclipse.ecf.core.identity.ID; /** * */ -public class PresenceContainerConnectTest extends PresenceAbstractTestCase { +public class ConnectTest extends PresenceAbstractTestCase { public static final int CLIENT_COUNT = 2; public static final int WAITTIME= 3000; diff --git a/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceAbstractTestCase.java b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceAbstractTestCase.java index 4448e8dd4..5cebfdc3f 100755 --- a/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceAbstractTestCase.java +++ b/tests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceAbstractTestCase.java @@ -47,8 +47,9 @@ public abstract class PresenceAbstractTestCase extends ContainerAbstractTestCase } } - protected IPresenceContainerAdapter getPresenceAdapter() { - return (IPresenceContainerAdapter) getClients()[0].getAdapter(IPresenceContainerAdapter.class); + protected IPresenceContainerAdapter getPresenceAdapter(int client) { + IContainer c = getClient(client); + if (c == null) return null; + return (IPresenceContainerAdapter) c.getAdapter(IPresenceContainerAdapter.class); } - } |