serializing/deserializing functions

This commit is contained in:
Timur A. Fatkhullin
2024-04-08 03:08:35 +03:00
parent 01d1685199
commit 580386459e
3 changed files with 187 additions and 26 deletions

View File

@@ -1,8 +1,9 @@
#include <list>
#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
#include <doctest/doctest.h>
#include <iostream>
#include "../common/adc_utils.h"
#include "../common/adc_value_holder.h"
TEST_CASE("[ADC VALUEHOLDER]")
@@ -83,4 +84,41 @@ TEST_CASE("[ADC VALUEHOLDER]")
using namespace std::literals;
CHECK_THROWS_WITH_AS(vsh = ""s, "user value is not valid", std::system_error);
std::string ss = "\t\t1, 2, 3, 4,5 ";
std::vector<int> vv;
adc::utils::AdcValueRangeFromCharRange(vv, ss, ",");
for (auto v : vv) {
std::cout << "v = " << v << "\n";
}
std::list<char> ll;
adc::utils::AdcCharRangeFromValueRange(ll, vv, "<>");
for (auto ch : ll) {
std::cout << ch;
}
std::cout << "\n";
ss.clear();
adc::utils::AdcCharRangeFromValueRange(ss, vv, "<>");
std::cout << "STR: [" << ss << "]\n";
std::tuple<int, float> tp{7, 77.77};
ss = "3, 33.33";
adc::utils::AdcTupleFromCharRange(tp, ss, ",");
std::cout << "TP: {" << std::get<0>(tp) << ", " << std::get<1>(tp) << "}\n";
std::get<1>(tp) = 77.77;
ll.clear();
adc::utils::AdcCharRangeFromTuple(ll, tp, "::");
for (auto ch : ll) {
std::cout << ch;
}
std::cout << "\n";
}