From 14eaa5e64d66f390679267448362e42efb7df14c Mon Sep 17 00:00:00 2001 From: kongr45gpen <electrovesta@gmail.com> Date: Sun, 18 Nov 2018 03:38:45 +0200 Subject: [PATCH] Add basic tests for the Message class --- tests/Message.cpp | 43 +++++++++++++++++++++++++++++++++++++++++++ tests/tests.cpp | 3 +++ 2 files changed, 46 insertions(+) create mode 100644 tests/Message.cpp create mode 100644 tests/tests.cpp diff --git a/tests/Message.cpp b/tests/Message.cpp new file mode 100644 index 00000000..7fc23a77 --- /dev/null +++ b/tests/Message.cpp @@ -0,0 +1,43 @@ +#include <catch2/catch.hpp> +#include <Message.hpp> + +TEST_CASE("1: Message is usable", "[message]") { + Message message(5, 17, Message::TC, 3); + + REQUIRE(message.serviceType == 5); + REQUIRE(message.messageType == 17); + REQUIRE(message.packetType == Message::TC); + REQUIRE(message.applicationId == 3); + REQUIRE(message.dataSize == 0); + + message.appendByte(250); + REQUIRE(message.dataSize == 1); + REQUIRE(message.readByte() == 250); +} + +TEST_CASE("2: Bit manipulations", "[message]") { + Message message(0, 0, Message::TC, 0); + + message.appendBits(10, 0x357); + message.appendBits(4, 0xb); + message.appendBits(2, 0); + message.appendByte(248); + message.appendBits(7, 0x16); + message.appendBits(1, 0x1); + message.appendBits(8, 0xff); + + REQUIRE(message.dataSize == 5); + + CHECK(message.readBits(10) == 0x357); + CHECK(message.readBits(4) == 0xb); + CHECK(message.readBits(2) == 0); + CHECK(message.readBits(5) == 0x1f); + CHECK(message.readBits(3) == 0); + CHECK(message.readByte() == 0x2d); + CHECK(message.readByte() == 0xff); + + message.resetRead(); + + CHECK(message.readUint32() == 0xd5ecf82d); + CHECK(message.readBits(8) == 0xff); +} diff --git a/tests/tests.cpp b/tests/tests.cpp new file mode 100644 index 00000000..58d82872 --- /dev/null +++ b/tests/tests.cpp @@ -0,0 +1,3 @@ +#define CATCH_CONFIG_MAIN +#include <catch2/catch.hpp> + -- GitLab