Skip to main content
summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorslewis2007-03-20 05:01:34 +0000
committerslewis2007-03-20 05:01:34 +0000
commit980b2735dc081f25611ac062a7186ba7ede24cbd (patch)
tree0cbcf0e24b97d47025cb012f34a6a265ac758765 /tests
parent9b9e61d967b518b427881eb0c5df894ae5c32571 (diff)
downloadorg.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-xtests/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-xtests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/ChatTest.java140
-rwxr-xr-xtests/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-xtests/bundles/org.eclipse.ecf.tests.presence/src/org/eclipse/ecf/tests/presence/PresenceAbstractTestCase.java7
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);
}
-
}

Back to the top