1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2025-12-06 05:01:12 +01:00

Fixed & improved test cases.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/trunk@8790 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
Gaston Dombiak 2007-07-23 02:06:30 +00:00 committed by gato
parent 52958e64f7
commit 5d9d7a7b80
6 changed files with 113 additions and 77 deletions

View file

@ -20,10 +20,11 @@
package org.jivesoftware.smackx;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.*;
import org.jivesoftware.smack.filter.PacketIDFilter;
import org.jivesoftware.smack.packet.IQ;
import org.jivesoftware.smack.test.SmackTestCase;
import org.jivesoftware.smackx.packet.Version;
/**
* Ensure that stream compression (JEP-138) is correctly supported by Smack.
@ -55,6 +56,24 @@ public class CompressionTest extends SmackTestCase {
assertTrue("Connection is not using stream compression", connection.isUsingCompression());
// Request the version of the server
Version version = new Version();
version.setType(IQ.Type.GET);
version.setTo(getServiceName());
// Create a packet collector to listen for a response.
PacketCollector collector = connection.createPacketCollector(new PacketIDFilter(version.getPacketID()));
connection.sendPacket(version);
// Wait up to 5 seconds for a result.
IQ result = (IQ)collector.nextResult(SmackConfiguration.getPacketReplyTimeout());
// Close the collector
collector.cancel();
assertNotNull("No reply was received from the server", result);
assertEquals("Incorrect IQ type from server", IQ.Type.RESULT, result.getType());
// Close connection
connection.disconnect();
}

View file

@ -245,7 +245,9 @@ public class MultiUserChatTest extends SmackTestCase {
public void testAnonymousParticipant() {
try {
// Anonymous user joins the new room
XMPPConnection anonConnection = new XMPPConnection(getServiceName());
ConnectionConfiguration connectionConfiguration =
new ConnectionConfiguration(getHost(), getPort(), getServiceName());
XMPPConnection anonConnection = new XMPPConnection(connectionConfiguration);
anonConnection.connect();
anonConnection.loginAnonymously();
MultiUserChat muc2 = new MultiUserChat(anonConnection, room);
@ -1753,18 +1755,21 @@ public class MultiUserChatTest extends SmackTestCase {
}
}
public void testManyResources() {
try {
// Create 20 more connections for user2
XMPPConnection[] conns = new XMPPConnection[20];
public void testManyResources() throws Exception {
// Create 5 more connections for user2
XMPPConnection[] conns = new XMPPConnection[5];
for (int i = 0; i < conns.length; i++) {
conns[i] = new XMPPConnection(getServiceName());
ConnectionConfiguration connectionConfiguration =
new ConnectionConfiguration(getHost(), getPort(), getServiceName());
connectionConfiguration.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled);
conns[i] = new XMPPConnection(connectionConfiguration);
conns[i].connect();
conns[i].login(getUsername(1), getUsername(1), "resource-" + i);
Thread.sleep(20);
}
// Join the 20 connections to the same room
MultiUserChat[] mucs = new MultiUserChat[20];
// Join the 5 connections to the same room
MultiUserChat[] mucs = new MultiUserChat[5];
for (int i = 0; i < mucs.length; i++) {
mucs[i] = new MultiUserChat(conns[i], room);
mucs[i].join("resource-" + i);
@ -1780,16 +1785,15 @@ public class MultiUserChatTest extends SmackTestCase {
Thread.sleep(200);
// Each connection leaves the room and closes the connection
for (int i = 0; i < mucs.length; i++) {
mucs[i].leave();
conns[i].disconnect();
for (MultiUserChat muc1 : mucs) {
muc1.leave();
}
} catch (Exception e) {
e.printStackTrace();
fail(e.getMessage());
}
Thread.sleep(200);
for (int i = 0; i < mucs.length; i++) {
conns[i].disconnect();
}
}
/**