File

spec/scansion/pep_pubsub_max.scs @ 12580:a9dbf657c894 0.12

util.datamapper: Improve handling of schemas with non-obvious "type" The JSON Schema specification says that schemas are objects or booleans, and that the 'type' property is optional and can be an array. This module previously allowed bare type names as schemas and did not really handle booleans. It now handles missing 'type' properties and boolean 'true' as a schema. Objects and arrays are guessed based on the presence of 'properties' or 'items' field.
author Kim Alvefur <zash@zash.se>
date Fri, 08 Jul 2022 17:32:48 +0200
parent 11631:6641ca266d94
line wrap: on
line source

# PEP max_items=max

[Client] Romeo
	jid: pep-test-maxitems@localhost
	password: password

-----

Romeo connects

Romeo sends:
	<iq type="set" id="pub">
		<pubsub xmlns="http://jabber.org/protocol/pubsub">
			<publish node="urn:xmpp:microblog:0">
				<item>
					<entry xmlns='http://www.w3.org/2005/Atom'>
						<title>Hello</title>
					</entry>
				</item>
			</publish>
			<publish-options>
				<x xmlns="jabber:x:data" type="submit">
					<field type="hidden" var="FORM_TYPE">
						<value>http://jabber.org/protocol/pubsub#publish-options</value>
					</field>
					<field var="pubsub#persist_items">
						<value>true</value>
					</field>
					<field var="pubsub#access_model">
						<value>open</value>
					</field>
					<field var="pubsub#max_items">
						<value>max</value>
					</field>
				</x>
			</publish-options>
		</pubsub>
	</iq>

Romeo receives:
	<iq type="result" id="pub">
		<pubsub xmlns="http://jabber.org/protocol/pubsub">
			<publish node="urn:xmpp:microblog:0">
				<item id="{scansion:any}"/>
			</publish>
		</pubsub>
	</iq>