Bug 20405 - Tests should share a "bring me online with this roster and this vcard" helper.
Summary: Tests should share a "bring me online with this roster and this vcard" helper.
Status: NEW
Alias: None
Product: Telepathy
Classification: Unclassified
Component: gabble (show other bugs)
Version: unspecified
Hardware: Other All
: lowest enhancement
Assignee: Telepathy bugs list
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-01 06:47 UTC by Will Thompson
Modified: 2009-06-02 07:29 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Will Thompson 2009-03-01 06:47:31 UTC
Quite a few tests have sync_dbus or magic 'expect's to make sure all the contact list channels have been announced, so that the test can expect NewChannels without risking picking up the wrong channel. There should be a "bring me online, send this roster and these vcards, and make sure everything's happened" helper.

Also, I just found a race where, after calling CreateChannel for a MUC, the test doesn't wait for Gabble to send the "I want to join" presence before sending back presences for the other MUC users. This code is copy-pasted all over the place, and should be abstracted.

Filing this as a general "we should improve this" ticket.
Comment 1 Will Thompson 2009-03-01 08:06:08 UTC
The second point is fixed in a branch:

commit d111516b60c3702f17db093e298b502f207f4ec1
Author: Will Thompson <will.thompson@collabora.co.uk>
Date:   Sun Mar 1 16:03:05 2009 +0000

    Add helper functions to join a MUC in tests.
    
    In passing, fixes a race in tubes/offer-muc-dbus-tube.py, which didn't
    wait for Gabble to ask to join the MUC before sending presences for the
    MUC's members.
    
    References fd.o #20405
Comment 2 Will Thompson 2009-06-02 07:29:09 UTC
Retitling, and downgrading priority.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.