From 2790590996da2f6a0f4d59570de62078a5ac8ae2 Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Mon, 5 Feb 2024 17:39:28 +0100 Subject: tools: Move to new module structure and moving to more schema based generation to convert more easily to json --- modules/tools/tests/c_iface.cpp | 56 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 modules/tools/tests/c_iface.cpp (limited to 'modules/tools/tests/c_iface.cpp') diff --git a/modules/tools/tests/c_iface.cpp b/modules/tools/tests/c_iface.cpp new file mode 100644 index 0000000..121605a --- /dev/null +++ b/modules/tools/tests/c_iface.cpp @@ -0,0 +1,56 @@ +#include +#include + +#include "../c++/c_gen_iface.hpp" + +#include + +namespace { +namespace schema { +using namespace saw::schema; + +using TestEmptyInterface = Interface<>; + +using TestOneFunctionInterface = Interface< + Member, "one"> +>; +} + +template +void test_generate(std::string& res){ + using namespace saw; + + data c_iface; + { + auto eov = generate_c_interface(c_iface); + SAW_EXPECT(eov.is_value(), "Couldn't generate interface info"); + } + + data j_data; + codec j_codec; + + { + auto eov = j_codec.encode(c_iface, j_data); + SAW_EXPECT(eov.is_value(), "Couldn't encode data"); + } + + res = convert_to_string(j_data.get_buffer()); +} + +SAW_TEST("CIface Empty Interface"){ + using namespace saw; + + std::string res; + test_generate(res); + + std::cout<<"\n"<(res); + std::cout<<"\n"<