diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2015-08-26 13:27:43 +0200 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2015-08-26 13:27:43 +0200 |
| commit | 7cfe1770d153512b538c97856c06436b2c34217b (patch) | |
| tree | b88d3c109dde16903a3718fe513cb578fe1f6923 /tests/qxmpprtcppacket/tst_qxmpprtcppacket.cpp | |
| parent | 459829c2d30e64b18ab4ed3b9c82e7b5f9ccd7ac (diff) | |
| download | qxmpp-7cfe1770d153512b538c97856c06436b2c34217b.tar.gz | |
RTCP: parse goodbye packet
Diffstat (limited to 'tests/qxmpprtcppacket/tst_qxmpprtcppacket.cpp')
| -rw-r--r-- | tests/qxmpprtcppacket/tst_qxmpprtcppacket.cpp | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/qxmpprtcppacket/tst_qxmpprtcppacket.cpp b/tests/qxmpprtcppacket/tst_qxmpprtcppacket.cpp index ca6f312e..9a3b6540 100644 --- a/tests/qxmpprtcppacket/tst_qxmpprtcppacket.cpp +++ b/tests/qxmpprtcppacket/tst_qxmpprtcppacket.cpp @@ -31,6 +31,8 @@ class tst_QXmppRtcpPacket : public QObject private slots: void testBad(); + void testGoodbye(); + void testGoodbyeWithReason(); void testReceiverReport(); void testSenderReport(); void testSenderReportWithReceiverReport(); @@ -45,6 +47,50 @@ void tst_QXmppRtcpPacket::testBad() QCOMPARE(packet.decode(QByteArray()), false); } +void tst_QXmppRtcpPacket::testGoodbye() +{ + const QByteArray data = QByteArray::fromHex("81cb000133425619"); + + QXmppRtcpPacket packet; + QVERIFY(packet.decode(data)); + + QCOMPARE(packet.goodbyeReason(), QString()); + QCOMPARE(packet.goodbyeSsrcs().size(), 1); + QCOMPARE(packet.goodbyeSsrcs()[0], quint32(859985433)); + QCOMPARE(packet.receiverReports().size(), 0); + QCOMPARE(packet.senderInfo().ntpStamp(), quint64(0)); + QCOMPARE(packet.senderInfo().octetCount(), quint32(0)); + QCOMPARE(packet.senderInfo().packetCount(), quint32(0)); + QCOMPARE(packet.senderInfo().rtpStamp(), quint32(0)); + QCOMPARE(packet.sourceDescriptions().size(), 0); + QCOMPARE(packet.ssrc(), quint32(0)); + QCOMPARE(packet.type(), quint8(QXmppRtcpPacket::Goodbye)); + + QCOMPARE(packet.encode(), data); +} + +void tst_QXmppRtcpPacket::testGoodbyeWithReason() +{ + const QByteArray data = QByteArray::fromHex("81cb0003334256190462796521000000"); + + QXmppRtcpPacket packet; + QVERIFY(packet.decode(data)); + + QCOMPARE(packet.goodbyeReason(), QLatin1String("bye!")); + QCOMPARE(packet.goodbyeSsrcs().size(), 1); + QCOMPARE(packet.goodbyeSsrcs()[0], quint32(859985433)); + QCOMPARE(packet.receiverReports().size(), 0); + QCOMPARE(packet.senderInfo().ntpStamp(), quint64(0)); + QCOMPARE(packet.senderInfo().octetCount(), quint32(0)); + QCOMPARE(packet.senderInfo().packetCount(), quint32(0)); + QCOMPARE(packet.senderInfo().rtpStamp(), quint32(0)); + QCOMPARE(packet.sourceDescriptions().size(), 0); + QCOMPARE(packet.ssrc(), quint32(0)); + QCOMPARE(packet.type(), quint8(QXmppRtcpPacket::Goodbye)); + + QCOMPARE(packet.encode(), data); +} + void tst_QXmppRtcpPacket::testReceiverReport() { const QByteArray data = QByteArray::fromHex("81c9000741f3bca22886dfa00000000000005eb90000001000000000fffbdae2"); @@ -52,6 +98,8 @@ void tst_QXmppRtcpPacket::testReceiverReport() QXmppRtcpPacket packet; QVERIFY(packet.decode(data)); + QCOMPARE(packet.goodbyeReason(), QString()); + QCOMPARE(packet.goodbyeSsrcs().size(), 0); QCOMPARE(packet.receiverReports().size(), 1); QCOMPARE(packet.receiverReports()[0].ssrc(), quint32(679927712)); QCOMPARE(packet.senderInfo().ntpStamp(), quint64(0)); @@ -72,6 +120,8 @@ void tst_QXmppRtcpPacket::testSenderReport() QXmppRtcpPacket packet; QVERIFY(packet.decode(data)); + QCOMPARE(packet.goodbyeReason(), QString()); + QCOMPARE(packet.goodbyeSsrcs().size(), 0); QCOMPARE(packet.receiverReports().size(), 0); QCOMPARE(packet.senderInfo().ntpStamp(), quint64(15672505252348484072ULL)); QCOMPARE(packet.senderInfo().octetCount(), quint32(18560)); @@ -91,6 +141,8 @@ void tst_QXmppRtcpPacket::testSenderReportWithReceiverReport() QXmppRtcpPacket packet; QVERIFY(packet.decode(data)); + QCOMPARE(packet.goodbyeReason(), QString()); + QCOMPARE(packet.goodbyeSsrcs().size(), 0); QCOMPARE(packet.receiverReports().size(), 1); QCOMPARE(packet.receiverReports()[0].ssrc(), quint32(2176590418)); QCOMPARE(packet.senderInfo().ntpStamp(), quint64(14952153165080187948ULL)); @@ -111,6 +163,8 @@ void tst_QXmppRtcpPacket::testSourceDescription() QXmppRtcpPacket packet; QVERIFY(packet.decode(data)); + QCOMPARE(packet.goodbyeReason(), QString()); + QCOMPARE(packet.goodbyeSsrcs().size(), 0); QCOMPARE(packet.receiverReports().size(), 0); QCOMPARE(packet.senderInfo().ntpStamp(), quint64(0)); QCOMPARE(packet.senderInfo().octetCount(), quint32(0)); |
