[Telepathy-commits] [telepathy-salut/master] emit the InitialOffsetDefined signal before the channel becomes Open
Guillaume Desmottes
guillaume.desmottes at collabora.co.uk
Fri Nov 21 03:46:50 PST 2008
---
src/salut-file-transfer-channel.c | 10 ++++++++++
tests/twisted/avahi/test-receive-file.py | 9 +++++----
.../avahi/test-send-file-provide-immediately.py | 9 +++++----
.../avahi/test-send-file-wait-to-provide.py | 5 +++++
4 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/src/salut-file-transfer-channel.c b/src/salut-file-transfer-channel.c
index a365552..30040eb 100644
--- a/src/salut-file-transfer-channel.c
+++ b/src/salut-file-transfer-channel.c
@@ -892,6 +892,9 @@ remote_accepted_cb (GibberFileTransfer *ft,
if (self->priv->socket_path != NULL)
{
/* ProvideFile has already been called. Channel is Open */
+ salut_svc_channel_type_file_transfer_emit_initial_offset_defined (self,
+ self->priv->initial_offset);
+
salut_file_transfer_channel_set_state (SALUT_SVC_CHANNEL_TYPE_FILE_TRANSFER (self),
SALUT_FILE_TRANSFER_STATE_OPEN,
SALUT_FILE_TRANSFER_STATE_CHANGE_REASON_NONE);
@@ -1171,6 +1174,10 @@ salut_file_transfer_channel_accept_file (SalutSvcChannelTypeFileTransfer *iface,
&out_address);
self->priv->initial_offset = 0;
+
+ salut_svc_channel_type_file_transfer_emit_initial_offset_defined (self,
+ self->priv->initial_offset);
+
salut_file_transfer_channel_set_state (iface, SALUT_FILE_TRANSFER_STATE_OPEN,
SALUT_FILE_TRANSFER_STATE_CHANGE_REASON_NONE);
}
@@ -1233,6 +1240,9 @@ salut_file_transfer_channel_provide_file (SalutSvcChannelTypeFileTransfer *iface
{
/* Remote already accepted the file. Channel is Open.
* If not channel stay Pending. */
+ salut_svc_channel_type_file_transfer_emit_initial_offset_defined (self,
+ self->priv->initial_offset);
+
salut_file_transfer_channel_set_state (iface,
SALUT_FILE_TRANSFER_STATE_OPEN,
SALUT_FILE_TRANSFER_STATE_CHANGE_REASON_REQUESTED);
diff --git a/tests/twisted/avahi/test-receive-file.py b/tests/twisted/avahi/test-receive-file.py
index ade589d..4325a39 100644
--- a/tests/twisted/avahi/test-receive-file.py
+++ b/tests/twisted/avahi/test-receive-file.py
@@ -160,15 +160,16 @@ def test(q, bus, conn):
assert state == FT_STATE_ACCEPTED
assert reason == FT_STATE_CHANGE_REASON_REQUESTED
+ e = q.expect('dbus-signal', signal='InitialOffsetDefined')
+ offset = e.args[0]
+ # We don't support resume
+ assert offset == 0
+
e = q.expect('dbus-signal', signal='FileTransferStateChanged')
state, reason = e.args
assert state == FT_STATE_OPEN
assert reason == FT_STATE_CHANGE_REASON_NONE
- offset = ft_props.Get(CHANNEL_TYPE_FILE_TRANSFER, 'InitialOffset')
- # We don't support resume
- assert offset == 0
-
# Connect to Salut's socket
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
s.connect(address)
diff --git a/tests/twisted/avahi/test-send-file-provide-immediately.py b/tests/twisted/avahi/test-send-file-provide-immediately.py
index b1fa296..8b36b86 100644
--- a/tests/twisted/avahi/test-send-file-provide-immediately.py
+++ b/tests/twisted/avahi/test-send-file-provide-immediately.py
@@ -175,16 +175,17 @@ def test(q, bus, conn):
http = httplib.HTTPConnection(host)
http.request('GET', file)
+ e = q.expect('dbus-signal', signal='InitialOffsetDefined')
+ offset = e.args[0]
+ # We don't support resume
+ assert offset == 0
+
# Channel is open. We can start to send the file
e = q.expect('dbus-signal', signal='FileTransferStateChanged')
state, reason = e.args
assert state == FT_STATE_OPEN
assert reason == FT_STATE_CHANGE_REASON_NONE
- offset = ft_props.Get(CHANNEL_TYPE_FILE_TRANSFER, 'InitialOffset')
- # We don't support resume
- assert offset == 0
-
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
s.connect(address)
s.send(FILE_DATA)
diff --git a/tests/twisted/avahi/test-send-file-wait-to-provide.py b/tests/twisted/avahi/test-send-file-wait-to-provide.py
index 877dec7..1e8afb1 100644
--- a/tests/twisted/avahi/test-send-file-wait-to-provide.py
+++ b/tests/twisted/avahi/test-send-file-wait-to-provide.py
@@ -181,6 +181,11 @@ def test(q, bus, conn):
address = ft_channel.ProvideFile(SOCKET_ADDRESS_TYPE_UNIX, SOCKET_ACCESS_CONTROL_LOCALHOST, "")
+ e = q.expect('dbus-signal', signal='InitialOffsetDefined')
+ offset = e.args[0]
+ # We don't support resume
+ assert offset == 0
+
# Channel is open. We can start to send the file
e = q.expect('dbus-signal', signal='FileTransferStateChanged')
state, reason = e.args
--
1.5.6.5
More information about the Telepathy-commits
mailing list