File

spec/scansion/basic_roster.scs @ 13345:a74251a790ed

mod_blocklist: Remove weak cache (and increase default LRU cache size) Weak tables are said to have suboptimal performance, so we might as well get replace it with an increased default LRU cache size. Sorry about the 'and'
author Kim Alvefur <zash@zash.se>
date Sun, 26 Nov 2023 17:41:38 +0100
parent 9305:f14c81fd44a4
line wrap: on
line source

# Basic roster test

[Client] Romeo
	jid: user@localhost
	password: password

[Client] Juliet
	jid: juliet@localhost
	password: password

---------

Romeo connects

Juliet connects

Romeo sends:
	<presence/>

Romeo receives:
	<presence from="${Romeo's full JID}" />

Romeo sends:
	<iq type="get" id="roster1">
		<query xmlns='jabber:iq:roster'/>
	</iq>

Romeo receives:
	<iq type="result" id="roster1">
		<query ver='{scansion:any}' xmlns="jabber:iq:roster"/>
	</iq>

# Add nurse to roster

Romeo sends:
	<iq type="set" id="roster2">
		<query xmlns="jabber:iq:roster">
			<item jid='nurse@localhost'/>
		</query>
	</iq>

# Receive the roster add result

Romeo receives:
	<iq type="result" id="roster2"/>

# Receive the roster push

Romeo receives:
	<iq type="set" id="{scansion:any}">
		<query xmlns='jabber:iq:roster' ver='{scansion:any}'>
			<item jid='nurse@localhost' subscription='none'/>
		</query>
	</iq>

Romeo sends:
	<iq type="result" id="fixme"/>

# Fetch the roster, it should include nurse now

Romeo sends:
	<iq type="get" id="roster3">
		<query xmlns='jabber:iq:roster'/>
	</iq>

Romeo receives:
	<iq type="result" id="roster3">
		<query xmlns='jabber:iq:roster' ver="{scansion:any}">
			<item subscription='none' jid='nurse@localhost'/>
		</query>
	</iq>

Romeo disconnects