<testcase>
<info>
<keywords>
MQTT
MQTT SUBSCRIBE
</keywords>
</info>

#
# Server-side
<reply>
<data nocheck="yes">
hello
</data>
<datacheck hex="yes">
00 04 33 30 31 37   68 65 6c 6c 6f 5b 4c 46 5d 0a
</datacheck>
<servercmd>
excessive-remaining TRUE
</servercmd>
</reply>

#
# Client-side
<client>
<features>
mqtt
</features>
<server>
mqtt
</server>
<name>
MQTT SUBSCRIBE with pathological PUBLISH length
</name>
<command option="binary-trace">
mqtt://%HOSTIP:%MQTTPORT/%TESTNUMBER -m 3
</command>
</client>

#
# Verify data after the test has been "shot"
<verify>
# These are hexadecimal protocol dumps from the client
#
# Strip out the random part of the client id from the CONNECT message
# before comparison
<strippart>
s/^(.* 00044d5154540402003c000c6375726c).*/$1/
</strippart>
# on windows the disconnect is never seen - no idea why
<strip>
^server DISCONNECT 0 e000
</strip>
<protocol>
client CONNECT 18 00044d5154540402003c000c6375726c
server CONNACK 2 20020000
client SUBSCRIBE 9 000100043330313700
server SUBACK 3 9003000100
server PUBLISH c 30ffffff8000043330313768656c6c6f0a
</protocol>

# 8 is CURLE_WEIRD_SERVER_REPLY
<errorcode>
8
</errorcode>
</verify>
</testcase>