xo-procedure2: + simple unit test
This commit is contained in:
parent
673895902a
commit
5df004fb12
4 changed files with 67 additions and 1 deletions
|
|
@ -79,7 +79,7 @@ xo_add_genfacetimpl(
|
|||
)
|
||||
|
||||
add_subdirectory(src/procedure2)
|
||||
#add_subdirectory(utest)
|
||||
add_subdirectory(utest)
|
||||
|
||||
# ----------------------------------------------------------------
|
||||
|
||||
|
|
|
|||
11
utest/CMakeLists.txt
Normal file
11
utest/CMakeLists.txt
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# built unittest xo-procedure2/utest
|
||||
|
||||
set(UTEST_EXE utest.procedure2)
|
||||
set(UTEST_SRCS
|
||||
procedure2_utest_main.cpp
|
||||
DPrimitive.test.cpp
|
||||
)
|
||||
|
||||
xo_add_utest_executable(${UTEST_EXE} ${UTEST_SRCS})
|
||||
xo_self_dependency(${UTEST_EXE} xo_procedure2)
|
||||
xo_external_target_dependency(${UTEST_EXE} Catch2 Catch2::Catch2)
|
||||
35
utest/DPrimitive.test.cpp
Normal file
35
utest/DPrimitive.test.cpp
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
/** @file DPrimitive.test.cpp
|
||||
*
|
||||
* @author Roland Conybeare, Jan 2026
|
||||
**/
|
||||
|
||||
#include <xo/procedure2/init_procedure2.hpp>
|
||||
#include <xo/procedure2/init_primitives.hpp>
|
||||
#include <catch2/catch.hpp>
|
||||
|
||||
namespace xo {
|
||||
using xo::scm::Primitives;
|
||||
|
||||
namespace ut {
|
||||
static InitEvidence s_init = InitSubsys<S_procedure2_tag>::require();
|
||||
|
||||
TEST_CASE("DPrimitive-init", "[procedure2][DPrimitive]")
|
||||
{
|
||||
REQUIRE(s_init.evidence());
|
||||
}
|
||||
|
||||
TEST_CASE("DPrimitive-n_args", "[procedure2][DPrimitive]")
|
||||
{
|
||||
// s_mul_gco_gco_pm takes 2 AGCObject args
|
||||
REQUIRE(Primitives::s_mul_gco_gco_pm.n_args() == 2);
|
||||
}
|
||||
|
||||
TEST_CASE("DPrimitive-is_nary", "[procedure2][DPrimitive]")
|
||||
{
|
||||
REQUIRE(Primitives::s_mul_gco_gco_pm.is_nary() == false);
|
||||
}
|
||||
|
||||
} /*namespace ut*/
|
||||
} /*namespace xo*/
|
||||
|
||||
/* end DPrimitive.test.cpp */
|
||||
20
utest/procedure2_utest_main.cpp
Normal file
20
utest/procedure2_utest_main.cpp
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
/* file procedure2_utest_main.cpp */
|
||||
|
||||
#include <xo/subsys/Subsystem.hpp>
|
||||
|
||||
#define CATCH_CONFIG_RUNNER
|
||||
#include "catch2/catch.hpp"
|
||||
|
||||
int
|
||||
main(int argc, char* argv[])
|
||||
{
|
||||
using xo::Subsystem;
|
||||
|
||||
Subsystem::initialize_all();
|
||||
|
||||
int result = Catch::Session().run(argc, argv);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/* end procedure2_utest_main.cpp */
|
||||
Loading…
Add table
Add a link
Reference in a new issue