From 441cdf0935a053dddb567c54b313be4a54809d0c Mon Sep 17 00:00:00 2001 From: Jason Turner Date: Mon, 16 Jul 2012 22:10:40 -0600 Subject: [PATCH] Add test showing c linkage working fine [#16] --- CMakeLists.txt | 4 ++++ unittests/c_linkage_test.cpp | 20 ++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 unittests/c_linkage_test.cpp diff --git a/CMakeLists.txt b/CMakeLists.txt index 0d9b474..9f0c767 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -204,6 +204,10 @@ if(BUILD_TESTING) target_link_libraries(simultaneous_chaiscript_test ${LIBS}) add_test(NAME Simultaneous_Chaiscript_Test COMMAND simultaneous_chaiscript_test) + add_executable(c_linkage_test unittests/c_linkage_test.cpp) + target_link_libraries(c_linkage_test ${LIBS}) + add_test(NAME C_Linkage_Test COMMAND c_linkage_test) + if (MULTITHREAD_SUPPORT_ENABLED) add_executable(multithreaded_test unittests/multithreaded_test.cpp) target_link_libraries(multithreaded_test ${LIBS}) diff --git a/unittests/c_linkage_test.cpp b/unittests/c_linkage_test.cpp new file mode 100644 index 0000000..833e400 --- /dev/null +++ b/unittests/c_linkage_test.cpp @@ -0,0 +1,20 @@ +#include + + +extern "C" +{ + int dosomething(int i) + { + return i % 2; + } +} + +int main() +{ + + chaiscript::ChaiScript chai; + chai.add(chaiscript::fun(&dosomething), "dosomething"); + + return chai.eval("dosomething(101)") == 101 % 2?EXIT_SUCCESS:EXIT_FAILURE; + +}