This commit is contained in:
Timur A. Fatkhullin
2024-10-08 01:50:40 +03:00
parent 7e3aed284c
commit 6bd447c458
4 changed files with 478 additions and 113 deletions

View File

@@ -1,4 +1,3 @@
#include <list>
#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
#include <doctest/doctest.h>
#include <iostream>
@@ -6,9 +5,11 @@
// #include "../common/adc_utils.h"
// #include "../net/adc_netmessage.h"
#include <list>
#include "../net/adc_device_netmsg.h"
#include "../net/adc_endpoint.h"
#include "../net/adc_netmsg.h"
// #include "../net/adc_netmsg.h"
using namespace adc;
@@ -18,59 +19,59 @@ static constexpr char TD[] = "-";
TEST_CASE("[ADC NET MESSAGE]")
{
AdcKeyTokenNetMessage<DD> msg;
// AdcKeyTokenNetMessage<DD> msg;
std::string_view bytes{"SET=POS 1 2 3 4 5"};
// std::string_view bytes{"SET=POS 1 2 3 4 5"};
std::cout << "INPUT BYTES: [" << bytes << "]\n";
// std::cout << "INPUT BYTES: [" << bytes << "]\n";
msg.setFromBytes(bytes.begin(), bytes.end());
// msg.setFromBytes(bytes.begin(), bytes.end());
auto keyv = msg.keyView();
auto keyb = msg.keyBytes();
// auto keyv = msg.keyView();
// auto keyb = msg.keyBytes();
std::cout << "KEY VIEW: [" << keyv << "]\n";
std::cout << "KEY BYTE: [" << keyb << "]\n";
// std::cout << "KEY VIEW: [" << keyv << "]\n";
// std::cout << "KEY BYTE: [" << keyb << "]\n";
auto tks = msg.tokens(1, 3);
for (auto& el : tks) {
std::cout << "TOKEN: [" << el << "]\n";
}
// auto tks = msg.tokens(1, 3);
// for (auto& el : tks) {
// std::cout << "TOKEN: [" << el << "]\n";
// }
auto t2 = msg.bytesView();
std::cout << "BYTES VIEW: ";
for (auto& el : t2) {
std::cout << "[" << el << "]";
}
std::cout << "\n";
// auto t2 = msg.bytesView();
// std::cout << "BYTES VIEW: ";
// for (auto& el : t2) {
// std::cout << "[" << el << "]";
// }
// std::cout << "\n";
std::cout << "\n\n---------\n\n";
// std::cout << "\n\n---------\n\n";
msg.setTokens("FILTER", "A1", "B3");
std::cout << "BYTES: " << msg.bytes() << "\n";
// msg.setTokens("FILTER", "A1", "B3");
// std::cout << "BYTES: " << msg.bytes() << "\n";
std::cout << "TOK BYTES: [" << msg.tokensBytes(1, 1) << "]\n";
// std::cout << "TOK BYTES: [" << msg.tokensBytes(1, 1) << "]\n";
std::cout << "\n\n---------\n\n";
// std::cout << "\n\n---------\n\n";
AdcTokenNetMessage<> tmsg;
std::list<char> bb{'1', ' ', '2', ' ', '3', ' ', '4', ' ', '5'};
// AdcTokenNetMessage<> tmsg;
// std::list<char> bb{'1', ' ', '2', ' ', '3', ' ', '4', ' ', '5'};
tmsg.setFromBytes(bb.begin(), bb.end());
// tmsg.setFromBytes(bb.begin(), bb.end());
auto t1 = tmsg.bytesView();
std::cout << "TOKENS VIEW: ";
for (auto& el : t1) {
std::cout << "[" << el << "]";
}
std::cout << "\n";
// auto t1 = tmsg.bytesView();
// std::cout << "TOKENS VIEW: ";
// for (auto& el : t1) {
// std::cout << "[" << el << "]";
// }
// std::cout << "\n";
std::cout << "\n\n\n";
// std::cout << "\n\n\n";
AdcEndpoint ept(AdcEndpoint::PROTO_ID_LOCAL, "SOCK");
@@ -88,12 +89,21 @@ TEST_CASE("[ADC NET MESSAGE]")
AdcDeviceNetMessage md(bs);
std::cout << "KEY = {" << md.keyword() << "}\n";
std::cout << "KEY = {" << md.key() << "}\n";
std::cout << "VALUE = {" << md.value() << "}\n";
for (auto& pp : md.params(2, 2)) {
std::cout << "PAR: {" << pp << "}\n";
}
auto st = md.joinParams(0, 3);
std::cout << "JOIN: {" << st << "}\n";
// md.setKeyValue(11, std::make_tuple("1.1", 33.77));
md.setKeyValue(std::string_view("SET"), std::make_tuple("1.1", 33.77), "OPER", 1.0, 33.44);
std::cout << "BS: " << bs << "\n";
md.setKeyParams(std::string_view("SET_ATTR"), std::make_tuple("1.1", 33.77), 77.33, "DEDE");
std::cout << "BS: " << bs << "\n";
}
/*