telepathy-idle: muc-channel: set configuration retrieved when appropriate
Jonny Lamb
jonny at kemper.freedesktop.org
Wed May 16 10:45:09 PDT 2012
Module: telepathy-idle
Branch: master
Commit: ae49f3ee466d8064fe33826233efa68d3e2fbb0a
URL: http://cgit.freedesktop.org/telepathy/telepathy-idle/commit/?id=ae49f3ee466d8064fe33826233efa68d3e2fbb0a
Author: Jonny Lamb <jonny.lamb at collabora.co.uk>
Date: Tue May 15 14:47:22 2012 +0100
muc-channel: set configuration retrieved when appropriate
Signed-off-by: Jonny Lamb <jonny.lamb at collabora.co.uk>
---
src/idle-muc-channel.c | 2 ++
tests/twisted/messages/room-config.py | 19 +++++++++++++------
2 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/src/idle-muc-channel.c b/src/idle-muc-channel.c
index d88cc32..b3d68a8 100644
--- a/src/idle-muc-channel.c
+++ b/src/idle-muc-channel.c
@@ -894,6 +894,8 @@ void idle_muc_channel_mode(IdleMUCChannel *chan, GValueArray *args) {
TpBaseConnection *base_conn = tp_base_channel_get_connection (base);
TpHandleRepoIface *handles = tp_base_connection_get_handles(base_conn, TP_HANDLE_TYPE_CONTACT);
+ tp_base_room_config_set_retrieved (priv->room_config);
+
for (guint i = 1; i < args->n_values; i++) {
const gchar *modes = g_value_get_string(g_value_array_get_nth(args, i));
gchar operation = modes[0];
diff --git a/tests/twisted/messages/room-config.py b/tests/twisted/messages/room-config.py
index 5837ee0..0b8043a 100644
--- a/tests/twisted/messages/room-config.py
+++ b/tests/twisted/messages/room-config.py
@@ -8,6 +8,10 @@ from servicetest import EventPattern, call_async, assertContains, assertEquals,
import constants as cs
import dbus
+def change_channel_mode(stream, mode_change):
+ stream.sendMessage('324', stream.nick, '#test', mode_change,
+ prefix='idle.test.server')
+
def setup(q, bus, conn, stream):
conn.Connect()
q.expect('dbus-signal', signal='StatusChanged',
@@ -19,12 +23,19 @@ def setup(q, bus, conn, stream):
cs.TARGET_HANDLE_TYPE: cs.HT_ROOM,
cs.TARGET_ID: '#test'})
- ret = q.expect('dbus-return', method='CreateChannel')
+ ret, _, _ = q.expect_many(EventPattern('dbus-return', method='CreateChannel'),
+ EventPattern('dbus-signal', signal='MembersChanged'),
+ EventPattern('stream-MODE', data=['#test']))
- q.expect('dbus-signal', signal='MembersChanged')
chan = wrap_channel(bus.get_object(conn.bus_name, ret.value[0]),
'Text', extra=['RoomConfig1'])
+ change_channel_mode(stream, '+n')
+
+ q.expect('dbus-signal', signal='PropertiesChanged',
+ args=[cs.CHANNEL_IFACE_ROOM_CONFIG,
+ {'ConfigurationRetrieved': True}, []])
+
sync_stream(q, stream)
return chan
@@ -216,10 +227,6 @@ def test_password(q, bus, conn, stream):
[]])
)
-def change_channel_mode(stream, mode_change):
- stream.sendMessage('324', stream.nick, '#test', mode_change,
- prefix='idle.test.server')
-
def test_modechanges(q, bus, conn, stream):
chan = setup(q, bus, conn, stream)
More information about the telepathy-commits
mailing list