fix testNickName() test

cusax-fix
Symphorien Wanko 17 years ago
parent deb7c87830
commit 48a1233997

@ -236,10 +236,9 @@ public static Test suite()
suite.addTest( suite.addTest(
new TestOperationSetMultiUserChat2("testLeave")); new TestOperationSetMultiUserChat2("testLeave"));
//
// suite.addTest(
// new TestOperationSetMultiUserChat2("testNickName"));
suite.addTest(
new TestOperationSetMultiUserChat2("testNickName"));
// following test are not yet commplete // following test are not yet commplete
// //
@ -682,6 +681,9 @@ public void testNickName()
assertTrue("user nickname not found by peer " assertTrue("user nickname not found by peer "
, nameIsOnMemberList(user1FirstNick, opSet2Room.getMembers())); , nameIsOnMemberList(user1FirstNick, opSet2Room.getMembers()));
MUCEventCollector opSet2RoomCollector =
new MUCEventCollector(opSet2Room, MUCEventCollector.EVENT_PROPERTY);
// change the nickname // change the nickname
opSet1Room.setUserNickname(user1SecondNick); opSet1Room.setUserNickname(user1SecondNick);
@ -693,7 +695,20 @@ public void testNickName()
"user nickname not found on member list after modification" "user nickname not found on member list after modification"
, nameIsOnMemberList(user1SecondNick, opSet1Room.getMembers())); , nameIsOnMemberList(user1SecondNick, opSet1Room.getMembers()));
// checking the nickname modification on the other side // user2 have to wait for the event
opSet2RoomCollector.waitForEvent(10000);
assertEquals("no event received since a member changed his nick"
, 1, opSet2RoomCollector.collectedEvents.size());
ChatRoomMemberPropertyChangeEvent changeEvent =
(ChatRoomMemberPropertyChangeEvent)
opSet2RoomCollector.collectedEvents.get(0);
assertEquals("the change event doesnt comes from the expected member"
, fixture.userID1
, changeEvent.getSourceChatRoomMember().getContactAddress());
assertTrue("user nickname not found on member list after modification, " + assertTrue("user nickname not found on member list after modification, " +
"from peer side", "from peer side",
nameIsOnMemberList(user1SecondNick, opSet2Room.getMembers())); nameIsOnMemberList(user1SecondNick, opSet2Room.getMembers()));
@ -936,9 +951,9 @@ class MUCEventCollector
ChatRoomInvitationListener, ChatRoomInvitationListener,
LocalUserChatRoomPresenceListener, LocalUserChatRoomPresenceListener,
ChatRoomMemberPresenceListener, ChatRoomMemberPresenceListener,
ChatRoomMessageListener ChatRoomMessageListener,
ChatRoomMemberPropertyChangeListener
{ {
private final ArrayList collectedEvents = new ArrayList(); private final ArrayList collectedEvents = new ArrayList();
private int waitCount = 0; private int waitCount = 0;
@ -953,6 +968,8 @@ class MUCEventCollector
private static final int EVENT_MESSAGE = 3; private static final int EVENT_MESSAGE = 3;
private static final int EVENT_PROPERTY = 4;
/** /**
* Creates an event collector to listen for specific events from * Creates an event collector to listen for specific events from
* the given opSet * the given opSet
@ -993,6 +1010,9 @@ public MUCEventCollector(ChatRoom room, int eventType)
case EVENT_MESSAGE: case EVENT_MESSAGE:
room.addMessageListener(this); room.addMessageListener(this);
break; break;
case EVENT_PROPERTY:
room.addMemberPropertyChangeListener(this);
break;
default: default:
throw new IllegalArgumentException( throw new IllegalArgumentException(
"invalid event category " + eventType); "invalid event category " + eventType);
@ -1096,5 +1116,11 @@ public void messageDeliveryFailed(
{ {
collectEvent(evt); collectEvent(evt);
} }
public void chatRoomPropertyChanged(
ChatRoomMemberPropertyChangeEvent evt)
{
collectEvent(evt);
}
} }
} }

Loading…
Cancel
Save