ADC/tests/adc_netmsg_test.cpp
Timur A. Fatkhullin 2acb97e973 ...
2024-05-28 23:41:36 +03:00

43 lines
931 B
C++

#include <list>
#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
#include <doctest/doctest.h>
#include <iostream>
#include "../net/adc_netmessage.h"
using namespace adc;
static constexpr char DD[] = "=";
TEST_CASE("[ADC NET MESSAGE]")
{
AdcKeyParamNetMessage<DD> msg;
std::string_view bytes{"SET=POS 1 2 3 4 5"};
std::cout << "INPUT BYTES: [" << bytes << "]\n";
msg.setFromBytes(bytes.begin(), bytes.end());
std::string key, pars, bb;
msg.key(key);
std::cout << "KEY: [" << key << "]\n";
msg.paramsBytes(pars);
std::cout << "PARS BYTES: [" << pars << "]\n";
pars.clear();
msg.paramsBytes(pars, 2, 3);
std::cout << "PARS BYTES: [" << pars << "]\n";
std::list<std::string> ls;
msg.params(ls, 0, 3);
for (auto& el : ls) {
std::cout << "PAR: [" << el << "]\n";
}
msg.bytes(bb);
std::cout << "MESSAGE: [" << bb << "]\n";
REQUIRE_EQ(bb, bytes);
}