From 574185ccdf44457b934f06de3b4c6004a67495b1 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Tue, 3 Feb 2026 13:23:38 -0500 Subject: [PATCH] xo-reader2 stack: misc qol improvements + improve reader2 utest --- utest/SchematikaParser.test.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/utest/SchematikaParser.test.cpp b/utest/SchematikaParser.test.cpp index 29697389..0761ce39 100644 --- a/utest/SchematikaParser.test.cpp +++ b/utest/SchematikaParser.test.cpp @@ -9,6 +9,8 @@ #include #include #include +#include +#include #include #include @@ -18,11 +20,15 @@ namespace xo { using xo::scm::syntaxstatetype; // using xo::scm::DDefineSsm; using xo::scm::DExpectExprSsm; + using xo::scm::AExpression; + using xo::scm::DConstant; // using xo::scm::defexprstatetype; //using xo::scm::ParserResult; //using xo::scm::parser_result_type; using xo::scm::Token; using xo::scm::DString; + using xo::scm::DInteger; + using xo::mm::AGCObject; using xo::mm::ArenaConfig; using xo::mm::AAllocator; using xo::mm::DArena; @@ -244,6 +250,17 @@ namespace xo { REQUIRE(!result.is_error()); REQUIRE(result.is_expression()); REQUIRE(result.result_expr()); + + auto expr = obj::from(result.result_expr()); + REQUIRE(expr); + + REQUIRE(expr->value()); + + auto value_i64 = obj::from(expr->value()); + + REQUIRE(value_i64); + + REQUIRE(value_i64->value() == 1011); } //REQUIRE(result.is_error());