From 8e551ed394ed05852b1486f9e04fbdb3fff54a21 Mon Sep 17 00:00:00 2001 From: Stanislav Arnaudov Date: Thu, 20 Feb 2020 12:16:45 +0100 Subject: [PATCH] Adding everything in the Cmake --- src/alisp/tests/CMakeLists.txt | 12 ++++++++++-- src/alisp/tests/test_cast.cpp | 19 +++++++++++++++++++ 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/src/alisp/tests/CMakeLists.txt b/src/alisp/tests/CMakeLists.txt index e3591ea6..c7527f4b 100644 --- a/src/alisp/tests/CMakeLists.txt +++ b/src/alisp/tests/CMakeLists.txt @@ -11,6 +11,8 @@ add_executable(alisp_language_test test_algs.cpp test_cast.cpp test_engine.cpp + test_files.cpp + test_memory.cpp ${LAN_SOURCES}) target_include_directories(alisp_language_test @@ -18,7 +20,15 @@ target_include_directories(alisp_language_test PRIVATE ../src ) + +set(EXAMPLE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../data/tests/simple_file.al") +set(TEXT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../data/tests/example_text_file.txt") +set(OUTPUT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/../data/tests/output_text_file.txt") + target_compile_definitions(alisp_language_test PUBLIC AL_PRELUDE_DIR=\"${PRELUDE_DIR}\") +target_compile_definitions(alisp_language_test PUBLIC EXAMPLE_FILE=\"${EXAMPLE_FILE}\") +target_compile_definitions(alisp_language_test PUBLIC TEXT_FILE=\"${TEXT_FILE}\") +target_compile_definitions(alisp_language_test PUBLIC OUTPUT_FILE=\"${OUTPUT_FILE}\") target_link_libraries(alisp_language_test PRIVATE @@ -58,7 +68,5 @@ if(ENABLE_ASAN) dl PUBLIC alisp_language) - - endif() diff --git a/src/alisp/tests/test_cast.cpp b/src/alisp/tests/test_cast.cpp index a1873419..aa8e7bdd 100644 --- a/src/alisp/tests/test_cast.cpp +++ b/src/alisp/tests/test_cast.cpp @@ -71,3 +71,22 @@ TEST_CASE("Casting Test [string]", "[cast]") std::cout.clear(); } + + +TEST_CASE("Casting Test [char]", "[cast]") +{ + using namespace alisp; + LanguageEngine engine; + + std::cout.setstate(std::ios_base::failbit); + + std::string input = R"b( + (assert (== ?a (to-char "a"))) + (assert (== ?a (to-char 97))) + +)b"; + + CHECK(engine.eval_statement(input).first); + + std::cout.clear(); +}