diff options
56 files changed, 21 insertions, 129 deletions
diff --git a/tests/end_to_end/__main__.py b/tests/end_to_end/__main__.py index b94b3b1..e85a4f2 100644 --- a/tests/end_to_end/__main__.py +++ b/tests/end_to_end/__main__.py @@ -3,19 +3,17 @@ from functions import StanzaError, SkipStepError import collections -import lxml.etree import importlib +import sequences import datetime import slixmpp import asyncio import logging import signal import atexit -import time import sys -import io import os -from functools import partial + from slixmpp.xmlstream.matcher.base import MatcherBase if not hasattr(asyncio, "ensure_future"): @@ -131,32 +129,6 @@ class XMPPComponent(slixmpp.BaseXMPP): self.accepting_server = yield from self.loop.create_server(lambda: self, "127.0.0.1", 8811, reuse_address=True) - def check_stanza_against_all_expected_xpaths(self): - pass - - -def all_xpaths_match(stanza, xpaths): - for xpath in xpaths: - matched = match(stanza, xpath) - if not matched: - return False - return True - -def check_list_of_xpath(list_of_xpaths, xmpp, stanza): - found = None - for i, xpaths in enumerate(list_of_xpaths): - if all_xpaths_match(stanza, xpaths): - found = True - list_of_xpaths.pop(i) - break - - if not found: - raise StanzaError("Received stanza “%s” did not match any of the expected xpaths:\n%s" % (stanza, list_of_xpaths)) - - if list_of_xpaths: - step = partial(expect_unordered_already_formatted, list_of_xpaths) - xmpp.scenario.steps.insert(0, step) - class ProcessRunner: def __init__(self): @@ -205,30 +177,6 @@ class IrcServerRunner(ProcessRunner): self.create = asyncio.create_subprocess_exec("charybdis", "-foreground", "-configfile", os.getcwd() + "/../tests/end_to_end/ircd.conf", stderr=asyncio.subprocess.PIPE) - -def save_current_timestamp_plus_delta(key, delta, message, xmpp): - now_plus_delta = datetime.datetime.utcnow() + delta - xmpp.saved_values[key] = now_plus_delta.strftime("%FT%T.967Z") - -def sleep_for(duration, xmpp, biboumi): - time.sleep(duration) - asyncio.get_event_loop().call_soon(xmpp.run_scenario) - -# list_of_xpaths: [(xpath, xpath), (xpath, xpath), (xpath)] -def expect_unordered(list_of_xpaths, xmpp, biboumi): - formatted_list_of_xpaths = [] - for xpaths in list_of_xpaths: - formatted_xpaths = [] - for xpath in xpaths: - formatted_xpath = xpath.format_map(common_replacements) - formatted_xpaths.append(formatted_xpath) - formatted_list_of_xpaths.append(tuple(formatted_xpaths)) - expect_unordered_already_formatted(formatted_list_of_xpaths, xmpp, biboumi) - -def expect_unordered_already_formatted(formatted_list_of_xpaths, xmpp, biboumi): - xmpp.stanza_checker = partial(check_list_of_xpath, formatted_list_of_xpaths, xmpp) - - class BiboumiTest: """ Spawns a biboumi process and a fake XMPP Component that will run a @@ -322,10 +270,15 @@ persistent_by_default=true """,} -def chan_name_from_jid(jid): - return jid[1:jid.find('%')] - def get_scenarios(test_path, provided_scenar_names): + """ + :param test_path: The path containing all the tests + :param provided_scenar_names: a list of scenario names provided on the + command line by the user. May be empty + :return: The list of scenarios to be run. If provided_scenar_names is + empty, we return all the existing scenarios, otherwise we just return + the one from that list + """ scenarios = [] for entry in os.scandir(os.path.join(test_path, "scenarios")): if entry.is_file() and not entry.name.startswith('.') and entry.name.endswith('.py'): @@ -339,7 +292,10 @@ def get_scenarios(test_path, provided_scenar_names): conf = "basic" if hasattr(mod, "conf"): conf = mod.conf - scenarios.append(Scenario(module_name, mod.scenario, conf)) + # Every scenario needs to start with the handshake sequence. + # Instead of repeating it everytime, we add it implicitely. This + # is done here. + scenarios.append(Scenario(module_name, (sequences.handshake(),) + mod.scenario, conf)) return scenarios diff --git a/tests/end_to_end/functions.py b/tests/end_to_end/functions.py index fe5aea6..176dca5 100644 --- a/tests/end_to_end/functions.py +++ b/tests/end_to_end/functions.py @@ -3,7 +3,7 @@ import collections import datetime import asyncio import time -import lxml +import lxml.etree import io common_replacements = { diff --git a/tests/end_to_end/scenarios/basic_handshake_success.py b/tests/end_to_end/scenarios/basic_handshake_success.py index 8875166..9e1ffb3 100644 --- a/tests/end_to_end/scenarios/basic_handshake_success.py +++ b/tests/end_to_end/scenarios/basic_handshake_success.py @@ -1,5 +1,8 @@ from scenarios import * +# At the start of every scenario, we automatically insert a +# sequences.handshake() call. So, this scenario is just here to test that +# this basic thing works fine. + scenario = ( - sequences.handshake(), ) diff --git a/tests/end_to_end/scenarios/basic_subscribe_unsubscribe.py b/tests/end_to_end/scenarios/basic_subscribe_unsubscribe.py index cbcfeb6..6082fa6 100644 --- a/tests/end_to_end/scenarios/basic_subscribe_unsubscribe.py +++ b/tests/end_to_end/scenarios/basic_subscribe_unsubscribe.py @@ -1,7 +1,7 @@ from scenarios import * scenario = ( - sequences.handshake(), + # Mutual subscription exchange send_stanza("<presence from='{jid_one}' to='{biboumi_host}' type='subscribe' id='subid1' />"), diff --git a/tests/end_to_end/scenarios/channel_join_on_fixed_irc_server.py b/tests/end_to_end/scenarios/channel_join_on_fixed_irc_server.py index 88bdaa2..1fe9908 100644 --- a/tests/end_to_end/scenarios/channel_join_on_fixed_irc_server.py +++ b/tests/end_to_end/scenarios/channel_join_on_fixed_irc_server.py @@ -3,7 +3,7 @@ from scenarios import * conf = "fixed_server" scenario = ( - sequences.handshake(), + send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo@{biboumi_host}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}', fixed_irc_server=True), expect_stanza("/message/body[text()='Mode #foo [+nt] by {irc_host_one}']"), diff --git a/tests/end_to_end/scenarios/channel_join_with_different_nick.py b/tests/end_to_end/scenarios/channel_join_with_different_nick.py index 7005f66..388b098 100644 --- a/tests/end_to_end/scenarios/channel_join_with_different_nick.py +++ b/tests/end_to_end/scenarios/channel_join_with_different_nick.py @@ -3,7 +3,6 @@ from scenarios import * from scenarios.simple_channel_join import expect_self_join_presence scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_self_join_presence(jid = '{jid_one}/{resource_one}', chan = "#foo", nick = "{nick_one}"), diff --git a/tests/end_to_end/scenarios/channel_list_escaping.py b/tests/end_to_end/scenarios/channel_list_escaping.py index 31676a2..12c3ff9 100644 --- a/tests/end_to_end/scenarios/channel_list_escaping.py +++ b/tests/end_to_end/scenarios/channel_list_escaping.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - send_stanza("<presence from='{jid_one}/{resource_one}' to='#true\\2ffalse%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_stanza("/message/body[text()='Mode #true/false [+nt] by {irc_host_one}']"), diff --git a/tests/end_to_end/scenarios/complete_channel_list_with_pages_of_3.py b/tests/end_to_end/scenarios/complete_channel_list_with_pages_of_3.py index 1d4c9dc..8cef926 100644 --- a/tests/end_to_end/scenarios/complete_channel_list_with_pages_of_3.py +++ b/tests/end_to_end/scenarios/complete_channel_list_with_pages_of_3.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - send_stanza("<presence from='{jid_one}/{resource_one}' to='#aaa%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_stanza("/message"), diff --git a/tests/end_to_end/scenarios/configure_bad_value.py b/tests/end_to_end/scenarios/configure_bad_value.py index 83b9b11..4d2575c 100644 --- a/tests/end_to_end/scenarios/configure_bad_value.py +++ b/tests/end_to_end/scenarios/configure_bad_value.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - # Configure the throttle option with an incorrect value send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']", diff --git a/tests/end_to_end/scenarios/default_channel_list_limit.py b/tests/end_to_end/scenarios/default_channel_list_limit.py index 831c4c8..84f96b3 100644 --- a/tests/end_to_end/scenarios/default_channel_list_limit.py +++ b/tests/end_to_end/scenarios/default_channel_list_limit.py @@ -11,8 +11,6 @@ def incr_counter(): counter = incr_counter() scenario = ( - sequences.handshake(), - # Disable the throttling, otherwise it’s way too long send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']", diff --git a/tests/end_to_end/scenarios/default_mam_limit.py b/tests/end_to_end/scenarios/default_mam_limit.py index 7f9e101..02fcaa7 100644 --- a/tests/end_to_end/scenarios/default_mam_limit.py +++ b/tests/end_to_end/scenarios/default_mam_limit.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - # Disable the throttling, otherwise it’s way too long send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']", diff --git a/tests/end_to_end/scenarios/encoded_channel_join.py b/tests/end_to_end/scenarios/encoded_channel_join.py index 062bdab..fd4144a 100644 --- a/tests/end_to_end/scenarios/encoded_channel_join.py +++ b/tests/end_to_end/scenarios/encoded_channel_join.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#biboumi\\40louiz.org\\3a80%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_stanza("/message/body[text()='Mode #biboumi@louiz.org:80 [+nt] by {irc_host_one}']"), diff --git a/tests/end_to_end/scenarios/execute_admin_disconnect_from_server_adhoc_command.py b/tests/end_to_end/scenarios/execute_admin_disconnect_from_server_adhoc_command.py index 87eb213..18dfe94 100644 --- a/tests/end_to_end/scenarios/execute_admin_disconnect_from_server_adhoc_command.py +++ b/tests/end_to_end/scenarios/execute_admin_disconnect_from_server_adhoc_command.py @@ -3,8 +3,6 @@ from scenarios import * from scenarios.simple_channel_join import expect_self_join_presence scenario = ( - sequences.handshake(), - # Admin connects to first server send_stanza("<presence from='{jid_admin}/{resource_one}' to='#bar%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_admin}/{resource_one}'), diff --git a/tests/end_to_end/scenarios/execute_disconnect_user_adhoc_command.py b/tests/end_to_end/scenarios/execute_disconnect_user_adhoc_command.py index 25d5f6b..a680017 100644 --- a/tests/end_to_end/scenarios/execute_disconnect_user_adhoc_command.py +++ b/tests/end_to_end/scenarios/execute_disconnect_user_adhoc_command.py @@ -3,7 +3,6 @@ from scenarios import * from scenarios.simple_channel_join import expect_self_join_presence scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_admin}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_admin}/{resource_one}'), expect_self_join_presence(jid = '{jid_admin}/{resource_one}', chan = "#foo", nick = "{nick_one}"), diff --git a/tests/end_to_end/scenarios/execute_forbidden_adhoc_command.py b/tests/end_to_end/scenarios/execute_forbidden_adhoc_command.py index 8785dd9..10c98ab 100644 --- a/tests/end_to_end/scenarios/execute_forbidden_adhoc_command.py +++ b/tests/end_to_end/scenarios/execute_forbidden_adhoc_command.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='command1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='disconnect-user' action='execute' /></iq>"), expect_stanza("/iq[@type='error'][@id='command1']/commands:command[@node='disconnect-user']", "/iq/commands:command/commands:error[@type='cancel']/stanza:forbidden"), diff --git a/tests/end_to_end/scenarios/execute_hello_adhoc_command.py b/tests/end_to_end/scenarios/execute_hello_adhoc_command.py index 3fd2fb6..916d95a 100644 --- a/tests/end_to_end/scenarios/execute_hello_adhoc_command.py +++ b/tests/end_to_end/scenarios/execute_hello_adhoc_command.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='hello-command1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='hello' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='hello'][@sessionid][@status='executing']", "/iq/commands:command/dataform:x[@type='form']/dataform:title[text()='Configure your name.']", diff --git a/tests/end_to_end/scenarios/execute_incomplete_hello_adhoc_command.py b/tests/end_to_end/scenarios/execute_incomplete_hello_adhoc_command.py index 3035ec0..83b2a55 100644 --- a/tests/end_to_end/scenarios/execute_incomplete_hello_adhoc_command.py +++ b/tests/end_to_end/scenarios/execute_incomplete_hello_adhoc_command.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='hello-command1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='hello' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='hello'][@sessionid][@status='executing']", "/iq/commands:command/commands:actions/commands:complete", diff --git a/tests/end_to_end/scenarios/execute_ping_adhoc_command.py b/tests/end_to_end/scenarios/execute_ping_adhoc_command.py index 2af30ee..bcdefe1 100644 --- a/tests/end_to_end/scenarios/execute_ping_adhoc_command.py +++ b/tests/end_to_end/scenarios/execute_ping_adhoc_command.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='ping-command1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='ping' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='ping'][@status='completed']/commands:note[@type='info'][text()='Pong']") ) diff --git a/tests/end_to_end/scenarios/execute_reload_adhoc_command.py b/tests/end_to_end/scenarios/execute_reload_adhoc_command.py index 2cced19..5c4e1f7 100644 --- a/tests/end_to_end/scenarios/execute_reload_adhoc_command.py +++ b/tests/end_to_end/scenarios/execute_reload_adhoc_command.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='ping-command1' from='{jid_admin}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='reload' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='reload'][@status='completed']/commands:note[@type='info'][text()='Configuration reloaded.']"), ) diff --git a/tests/end_to_end/scenarios/fixed_irc_server_subscription.py b/tests/end_to_end/scenarios/fixed_irc_server_subscription.py index ecac07e..091cf2a 100644 --- a/tests/end_to_end/scenarios/fixed_irc_server_subscription.py +++ b/tests/end_to_end/scenarios/fixed_irc_server_subscription.py @@ -3,7 +3,6 @@ from scenarios import * conf = 'fixed_server' scenario = ( - sequences.handshake(), send_stanza("<presence type='subscribe' from='{jid_one}/{resource_one}' to='{biboumi_host}' id='sub1' />"), expect_stanza("/presence[@to='{jid_one}'][@from='{biboumi_host}'][@type='subscribed']") ) diff --git a/tests/end_to_end/scenarios/fixed_muc_disco_info.py b/tests/end_to_end/scenarios/fixed_muc_disco_info.py index 7a5f0b9..6cabb49 100644 --- a/tests/end_to_end/scenarios/fixed_muc_disco_info.py +++ b/tests/end_to_end/scenarios/fixed_muc_disco_info.py @@ -3,8 +3,6 @@ from scenarios import * conf = 'fixed_server' scenario = ( - sequences.handshake(), - send_stanza("<iq from='{jid_one}/{resource_one}' to='#foo@{biboumi_host}' id='1' type='get'><query xmlns='http://jabber.org/protocol/disco#info'/></iq>"), expect_stanza("/iq[@from='#foo@{biboumi_host}'][@to='{jid_one}/{resource_one}'][@type='result']/disco_info:query", "/iq[@type='result']/disco_info:query/disco_info:identity[@category='conference'][@type='irc'][@name='#foo on {irc_host_one}']", diff --git a/tests/end_to_end/scenarios/get_irc_connection_info.py b/tests/end_to_end/scenarios/get_irc_connection_info.py index ab30c02..25f2a87 100644 --- a/tests/end_to_end/scenarios/get_irc_connection_info.py +++ b/tests/end_to_end/scenarios/get_irc_connection_info.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - send_stanza("<iq type='set' id='command1' from='{jid_one}/{resource_one}' to='{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='get-irc-connection-info' action='execute' /></iq>"), expect_stanza("/iq/commands:command/commands:note[text()='You are not connected to the IRC server irc.localhost']"), diff --git a/tests/end_to_end/scenarios/get_irc_connection_info_fixed.py b/tests/end_to_end/scenarios/get_irc_connection_info_fixed.py index f90fa6a..d9be151 100644 --- a/tests/end_to_end/scenarios/get_irc_connection_info_fixed.py +++ b/tests/end_to_end/scenarios/get_irc_connection_info_fixed.py @@ -3,8 +3,6 @@ from scenarios import * conf = 'fixed_server' scenario = ( - sequences.handshake(), - send_stanza("<iq type='set' id='command1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='get-irc-connection-info' action='execute' /></iq>"), expect_stanza("/iq/commands:command/commands:note[text()='You are not connected to the IRC server irc.localhost']"), diff --git a/tests/end_to_end/scenarios/global_configure.py b/tests/end_to_end/scenarios/global_configure.py index 3c88fe6..d7771c4 100644 --- a/tests/end_to_end/scenarios/global_configure.py +++ b/tests/end_to_end/scenarios/global_configure.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='configure'][@sessionid][@status='executing']", "/iq/commands:command/dataform:x[@type='form']/dataform:title[text()='Configure some global default settings.']", diff --git a/tests/end_to_end/scenarios/global_configure_fixed.py b/tests/end_to_end/scenarios/global_configure_fixed.py index 718a09e..8df70ad 100644 --- a/tests/end_to_end/scenarios/global_configure_fixed.py +++ b/tests/end_to_end/scenarios/global_configure_fixed.py @@ -3,7 +3,6 @@ from scenarios import * conf = 'fixed_server' scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='global-configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='global-configure'][@sessionid][@status='executing']", "/iq/commands:command/dataform:x[@type='form']/dataform:title[text()='Configure some global default settings.']", diff --git a/tests/end_to_end/scenarios/global_configure_persistent_by_default.py b/tests/end_to_end/scenarios/global_configure_persistent_by_default.py index 0c56dc2..db47e88 100644 --- a/tests/end_to_end/scenarios/global_configure_persistent_by_default.py +++ b/tests/end_to_end/scenarios/global_configure_persistent_by_default.py @@ -3,7 +3,6 @@ from scenarios import * conf='persistent_by_default' scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='configure'][@sessionid][@status='executing']", "/iq/commands:command/dataform:x[@type='form']/dataform:title[text()='Configure some global default settings.']", diff --git a/tests/end_to_end/scenarios/invite_other.py b/tests/end_to_end/scenarios/invite_other.py index a75508d..2badf77 100644 --- a/tests/end_to_end/scenarios/invite_other.py +++ b/tests/end_to_end/scenarios/invite_other.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_stanza("/message"), diff --git a/tests/end_to_end/scenarios/irc_channel_configure.py b/tests/end_to_end/scenarios/irc_channel_configure.py index 15647d1..dcc78db 100644 --- a/tests/end_to_end/scenarios/irc_channel_configure.py +++ b/tests/end_to_end/scenarios/irc_channel_configure.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute'><dummy/></command></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='configure'][@sessionid][@status='executing']", "/iq/commands:command/dataform:x[@type='form']/dataform:field[@type='text-single'][@var='encoding_in']", diff --git a/tests/end_to_end/scenarios/irc_channel_configure_fixed.py b/tests/end_to_end/scenarios/irc_channel_configure_fixed.py index 3e72865..4f18c83 100644 --- a/tests/end_to_end/scenarios/irc_channel_configure_fixed.py +++ b/tests/end_to_end/scenarios/irc_channel_configure_fixed.py @@ -3,7 +3,6 @@ from scenarios import * conf = 'fixed_server' scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='#foo@{biboumi_host}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='configure'][@sessionid][@status='executing']", "/iq/commands:command/dataform:x[@type='form']/dataform:field[@type='text-single'][@var='encoding_in']", diff --git a/tests/end_to_end/scenarios/irc_channel_configure_xep0045.py b/tests/end_to_end/scenarios/irc_channel_configure_xep0045.py index 22c4ac9..c19990d 100644 --- a/tests/end_to_end/scenarios/irc_channel_configure_xep0045.py +++ b/tests/end_to_end/scenarios/irc_channel_configure_xep0045.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='id1' from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}'><query xmlns='http://jabber.org/protocol/muc#owner'/></iq>"), expect_stanza("/iq[@type='result']/muc_owner:query", "/iq/muc_owner:query/dataform:x[@type='form']/dataform:field[@type='text-single'][@var='encoding_in']", diff --git a/tests/end_to_end/scenarios/irc_server_configure.py b/tests/end_to_end/scenarios/irc_server_configure.py index 5ba619a..1470e6e 100644 --- a/tests/end_to_end/scenarios/irc_server_configure.py +++ b/tests/end_to_end/scenarios/irc_server_configure.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']/commands:command[@node='configure'][@sessionid][@status='executing']", "/iq/commands:command/dataform:x[@type='form']/dataform:title[text()='Configure the IRC server irc.localhost']", diff --git a/tests/end_to_end/scenarios/irc_server_connection.py b/tests/end_to_end/scenarios/irc_server_connection.py index d44839a..25ea749 100644 --- a/tests/end_to_end/scenarios/irc_server_connection.py +++ b/tests/end_to_end/scenarios/irc_server_connection.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection(), ) diff --git a/tests/end_to_end/scenarios/irc_server_connection_failure.py b/tests/end_to_end/scenarios/irc_server_connection_failure.py index aa02104..2abe39f 100644 --- a/tests/end_to_end/scenarios/irc_server_connection_failure.py +++ b/tests/end_to_end/scenarios/irc_server_connection_failure.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%doesnotexist@{biboumi_host}/{nick_one}' />"), expect_stanza("/message/body[text()='Connecting to doesnotexist:6697 (encrypted)']"), expect_stanza("/message/body[re:test(text(), 'Connection failed: (Domain name not found|Name or service not known)')]"), diff --git a/tests/end_to_end/scenarios/irc_server_presence_in_roster.py b/tests/end_to_end/scenarios/irc_server_presence_in_roster.py index 2bb7a27..bc2016d 100644 --- a/tests/end_to_end/scenarios/irc_server_presence_in_roster.py +++ b/tests/end_to_end/scenarios/irc_server_presence_in_roster.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - # Mutual subscription exchange send_stanza("<presence from='{jid_one}' to='{irc_server_one}' type='subscribe' id='subid1' />"), expect_stanza("/presence[@type='subscribed'][@id='subid1']"), diff --git a/tests/end_to_end/scenarios/irc_server_presence_subscription.py b/tests/end_to_end/scenarios/irc_server_presence_subscription.py index 59bd6e4..e9ad1a5 100644 --- a/tests/end_to_end/scenarios/irc_server_presence_subscription.py +++ b/tests/end_to_end/scenarios/irc_server_presence_subscription.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<presence type='subscribe' from='{jid_one}/{resource_one}' to='{irc_server_one}' id='sub1' />"), expect_stanza("/presence[@to='{jid_one}'][@from='{irc_server_one}'][@type='subscribed']"), ) diff --git a/tests/end_to_end/scenarios/irc_tls_connection.py b/tests/end_to_end/scenarios/irc_tls_connection.py index 3faa74f..8b30893 100644 --- a/tests/end_to_end/scenarios/irc_tls_connection.py +++ b/tests/end_to_end/scenarios/irc_tls_connection.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), # First, use an adhoc command to configure how we connect to the irc server, configure # only one TLS port, and disable the cert verification. send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), diff --git a/tests/end_to_end/scenarios/join_history_limit.py b/tests/end_to_end/scenarios/join_history_limit.py index 6291c4d..2432f14 100644 --- a/tests/end_to_end/scenarios/join_history_limit.py +++ b/tests/end_to_end/scenarios/join_history_limit.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - # Disable the throttling because the test is based on timings send_stanza("<iq type='set' id='id1' from='{jid_one}/{resource_one}' to='{irc_server_one}'><command xmlns='http://jabber.org/protocol/commands' node='configure' action='execute' /></iq>"), expect_stanza("/iq[@type='result']", diff --git a/tests/end_to_end/scenarios/leave_unjoined_chan.py b/tests/end_to_end/scenarios/leave_unjoined_chan.py index 322dd5d..a9751d7 100644 --- a/tests/end_to_end/scenarios/leave_unjoined_chan.py +++ b/tests/end_to_end/scenarios/leave_unjoined_chan.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_stanza("/message"), diff --git a/tests/end_to_end/scenarios/list_adhoc.py b/tests/end_to_end/scenarios/list_adhoc.py index 057cc7a..7b46312 100644 --- a/tests/end_to_end/scenarios/list_adhoc.py +++ b/tests/end_to_end/scenarios/list_adhoc.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='idwhatever' from='{jid_one}/{resource_one}' to='{biboumi_host}'><query xmlns='http://jabber.org/protocol/disco#items' node='http://jabber.org/protocol/commands' /></iq>"), expect_stanza("/iq[@type='result']/disco_items:query[@node='http://jabber.org/protocol/commands']", "/iq/disco_items:query/disco_items:item[@node='configure']", diff --git a/tests/end_to_end/scenarios/list_adhoc_fixed_server.py b/tests/end_to_end/scenarios/list_adhoc_fixed_server.py index 0898e15..fef378b 100644 --- a/tests/end_to_end/scenarios/list_adhoc_fixed_server.py +++ b/tests/end_to_end/scenarios/list_adhoc_fixed_server.py @@ -3,7 +3,6 @@ from scenarios import * conf = "fixed_server" scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='idwhatever' from='{jid_one}/{resource_one}' to='{biboumi_host}'><query xmlns='http://jabber.org/protocol/disco#items' node='http://jabber.org/protocol/commands' /></iq>"), expect_stanza("/iq[@type='result']/disco_items:query[@node='http://jabber.org/protocol/commands']", "/iq/disco_items:query/disco_items:item[@node='global-configure']", diff --git a/tests/end_to_end/scenarios/list_adhoc_irc.py b/tests/end_to_end/scenarios/list_adhoc_irc.py index e8acb28..ff94a1b 100644 --- a/tests/end_to_end/scenarios/list_adhoc_irc.py +++ b/tests/end_to_end/scenarios/list_adhoc_irc.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='idwhatever' from='{jid_one}/{resource_one}' to='{irc_host_one}@{biboumi_host}'><query xmlns='http://jabber.org/protocol/disco#items' node='http://jabber.org/protocol/commands' /></iq>"), expect_stanza("/iq[@type='result']/disco_items:query[@node='http://jabber.org/protocol/commands']", "/iq/disco_items:query/disco_items:item[2]", diff --git a/tests/end_to_end/scenarios/list_admin_adhoc.py b/tests/end_to_end/scenarios/list_admin_adhoc.py index 9e1ec17..0b71662 100644 --- a/tests/end_to_end/scenarios/list_admin_adhoc.py +++ b/tests/end_to_end/scenarios/list_admin_adhoc.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='idwhatever' from='{jid_admin}/{resource_one}' to='{biboumi_host}'><query xmlns='http://jabber.org/protocol/disco#items' node='http://jabber.org/protocol/commands' /></iq>"), expect_stanza("/iq[@type='result']/disco_items:query[@node='http://jabber.org/protocol/commands']", "/iq/disco_items:query/disco_items:item[@node='configure']", diff --git a/tests/end_to_end/scenarios/list_admin_adhoc_fixed_server.py b/tests/end_to_end/scenarios/list_admin_adhoc_fixed_server.py index 4fac959..8e2775e 100644 --- a/tests/end_to_end/scenarios/list_admin_adhoc_fixed_server.py +++ b/tests/end_to_end/scenarios/list_admin_adhoc_fixed_server.py @@ -3,7 +3,6 @@ from scenarios import * conf = "fixed_server" scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='idwhatever' from='{jid_admin}/{resource_one}' to='{biboumi_host}'><query xmlns='http://jabber.org/protocol/disco#items' node='http://jabber.org/protocol/commands' /></iq>"), expect_stanza("/iq[@type='result']/disco_items:query[@node='http://jabber.org/protocol/commands']", "/iq/disco_items:query/disco_items:item[@node='global-configure']", diff --git a/tests/end_to_end/scenarios/list_muc_user_adhoc.py b/tests/end_to_end/scenarios/list_muc_user_adhoc.py index cf7b494..6827a8d 100644 --- a/tests/end_to_end/scenarios/list_muc_user_adhoc.py +++ b/tests/end_to_end/scenarios/list_muc_user_adhoc.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='idwhatever' from='{jid_admin}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}'><query xmlns='http://jabber.org/protocol/disco#items' node='http://jabber.org/protocol/commands' /></iq>"), expect_stanza("/iq[@type='error']/error[@type='cancel']/stanza:feature-not-implemented"), ) diff --git a/tests/end_to_end/scenarios/muc_disco_info.py b/tests/end_to_end/scenarios/muc_disco_info.py index 85cac4b..19e90f2 100644 --- a/tests/end_to_end/scenarios/muc_disco_info.py +++ b/tests/end_to_end/scenarios/muc_disco_info.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - send_stanza("<iq from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}' id='1' type='get'><query xmlns='http://jabber.org/protocol/disco#info'/></iq>"), expect_stanza("/iq[@from='#foo%{irc_server_one}'][@to='{jid_one}/{resource_one}'][@type='result']/disco_info:query", "/iq[@type='result']/disco_info:query/disco_info:identity[@category='conference'][@type='irc'][@name='#foo on {irc_host_one}']", diff --git a/tests/end_to_end/scenarios/muc_traffic_info.py b/tests/end_to_end/scenarios/muc_traffic_info.py index 94a1120..0ef0d37 100644 --- a/tests/end_to_end/scenarios/muc_traffic_info.py +++ b/tests/end_to_end/scenarios/muc_traffic_info.py @@ -1,8 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), - send_stanza("<iq from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}' id='1' type='get'><query xmlns='http://jabber.org/protocol/disco#info' node='http://jabber.org/protocol/muc#traffic'/></iq>"), expect_stanza("/iq[@from='#foo%{irc_server_one}'][@to='{jid_one}/{resource_one}'][@type='result']/disco_info:query[@node='http://jabber.org/protocol/muc#traffic']"), ) diff --git a/tests/end_to_end/scenarios/multiple_channels_join.py b/tests/end_to_end/scenarios/multiple_channels_join.py index 1cc84ee..84e4360 100644 --- a/tests/end_to_end/scenarios/multiple_channels_join.py +++ b/tests/end_to_end/scenarios/multiple_channels_join.py @@ -3,8 +3,6 @@ from scenarios import * from scenarios.simple_channel_join import expect_self_join_presence scenario = ( - sequences.handshake(), - # Join 3 rooms, on the same server, with three different nicks send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), send_stanza("<presence from='{jid_one}/{resource_one}' to='#bar%{irc_server_one}/{nick_two}' />"), diff --git a/tests/end_to_end/scenarios/multisessionnick.py b/tests/end_to_end/scenarios/multisessionnick.py index 43cc31b..4e72ce7 100644 --- a/tests/end_to_end/scenarios/multisessionnick.py +++ b/tests/end_to_end/scenarios/multisessionnick.py @@ -3,8 +3,6 @@ from scenarios import * from scenarios.simple_channel_join import expect_self_join_presence scenario = ( - sequences.handshake(), - # Resource one joins a channel send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection(), diff --git a/tests/end_to_end/scenarios/nick_change_in_join.py b/tests/end_to_end/scenarios/nick_change_in_join.py index 3af0273..47aecc6 100644 --- a/tests/end_to_end/scenarios/nick_change_in_join.py +++ b/tests/end_to_end/scenarios/nick_change_in_join.py @@ -3,7 +3,6 @@ from scenarios import * from scenarios.simple_channel_join import expect_self_join_presence scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection(), expect_self_join_presence(jid = '{jid_one}/{resource_one}', chan = "#foo", nick = "{nick_one}"), diff --git a/tests/end_to_end/scenarios/not_connected_error.py b/tests/end_to_end/scenarios/not_connected_error.py index ed83d6b..cc9fb35 100644 --- a/tests/end_to_end/scenarios/not_connected_error.py +++ b/tests/end_to_end/scenarios/not_connected_error.py @@ -3,7 +3,6 @@ from scenarios import * from scenarios.simple_channel_join import expect_self_join_presence scenario = ( - sequences.handshake(), send_stanza("<presence type='unavailable' from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), # Fixme: what is the purpose of this test? Check that we don’t receive anything here…? diff --git a/tests/end_to_end/scenarios/raw_message.py b/tests/end_to_end/scenarios/raw_message.py index 56586d1..96a3f3d 100644 --- a/tests/end_to_end/scenarios/raw_message.py +++ b/tests/end_to_end/scenarios/raw_message.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_stanza("/message"), diff --git a/tests/end_to_end/scenarios/raw_message_fixed_irc_server.py b/tests/end_to_end/scenarios/raw_message_fixed_irc_server.py index 6443ccb..8196d12 100644 --- a/tests/end_to_end/scenarios/raw_message_fixed_irc_server.py +++ b/tests/end_to_end/scenarios/raw_message_fixed_irc_server.py @@ -3,8 +3,6 @@ from scenarios import * conf = 'fixed_server' scenario = ( - sequences.handshake(), - send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}', fixed_irc_server=True), expect_stanza("/message"), diff --git a/tests/end_to_end/scenarios/resource_is_removed_from_server_when_last_chan_is_left.py b/tests/end_to_end/scenarios/resource_is_removed_from_server_when_last_chan_is_left.py index 60e91fe..8d208f0 100644 --- a/tests/end_to_end/scenarios/resource_is_removed_from_server_when_last_chan_is_left.py +++ b/tests/end_to_end/scenarios/resource_is_removed_from_server_when_last_chan_is_left.py @@ -2,7 +2,6 @@ from scenarios import * scenario = ( # Join the channel - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}'), expect_stanza("/message/body[text()='Mode #foo [+nt] by {irc_host_one}']"), diff --git a/tests/end_to_end/scenarios/self_disco_info.py b/tests/end_to_end/scenarios/self_disco_info.py index 7ea30bf..6430dbd 100644 --- a/tests/end_to_end/scenarios/self_disco_info.py +++ b/tests/end_to_end/scenarios/self_disco_info.py @@ -1,7 +1,6 @@ from scenarios import * scenario = ( - sequences.handshake(), send_stanza("<iq type='get' id='get1' from='{jid_one}/{resource_one}' to='{biboumi_host}'><query xmlns='http://jabber.org/protocol/disco#info'/></iq>"), expect_stanza("/iq[@type='result']/disco_info:query/disco_info:identity[@category='conference'][@type='irc'][@name='Biboumi XMPP-IRC gateway']", "/iq/disco_info:query/disco_info:feature[@var='jabber:iq:version']", diff --git a/tests/end_to_end/scenarios/simple_channel_join.py b/tests/end_to_end/scenarios/simple_channel_join.py index 4147dbd..b09d6be 100644 --- a/tests/end_to_end/scenarios/simple_channel_join.py +++ b/tests/end_to_end/scenarios/simple_channel_join.py @@ -12,7 +12,6 @@ def expect_self_join_presence(jid, chan, nick, irc_server="{irc_server_one}"): scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo%{irc_server_one}/{nick_one}' />"), sequences.connection(), diff --git a/tests/end_to_end/scenarios/simple_channel_join_fixed.py b/tests/end_to_end/scenarios/simple_channel_join_fixed.py index 88bdaa2..6efd20f 100644 --- a/tests/end_to_end/scenarios/simple_channel_join_fixed.py +++ b/tests/end_to_end/scenarios/simple_channel_join_fixed.py @@ -3,7 +3,6 @@ from scenarios import * conf = "fixed_server" scenario = ( - sequences.handshake(), send_stanza("<presence from='{jid_one}/{resource_one}' to='#foo@{biboumi_host}/{nick_one}' />"), sequences.connection("irc.localhost", '{jid_one}/{resource_one}', fixed_irc_server=True), expect_stanza("/message/body[text()='Mode #foo [+nt] by {irc_host_one}']"), |