Files
IoTManager/lib/ArduinoStreamUtils/extras/test/HammingEncodingClientTest.cpp
Dmitry Borisenko 24a9d55ea0 first
2021-12-22 14:09:50 +01:00

31 lines
630 B
C++

// StreamUtils - github.com/bblanchon/ArduinoStreamUtils
// Copyright Benoit Blanchon 2019-2021
// MIT License
#include "SpyingAllocator.hpp"
#include "StreamUtils/Clients/HammingEncodingClient.hpp"
#include "StreamUtils/Clients/MemoryClient.hpp"
#include "doctest.h"
using namespace StreamUtils;
TEST_CASE("HammingEncodingClient") {
MemoryClient upstream(64);
HammingEncodingClient<7, 4> client{upstream};
SUBCASE("read() forwards upstream data") {
upstream.print("A");
CHECK(client.read() == 'A');
}
SUBCASE("write() encodes") {
client.write('A');
CHECK(upstream.readString() == "Tq");
}
}