diff --git a/libfreerdp/core/test/CMakeLists.txt b/libfreerdp/core/test/CMakeLists.txt new file mode 100644 index 000000000..7b9853519 --- /dev/null +++ b/libfreerdp/core/test/CMakeLists.txt @@ -0,0 +1,26 @@ + +set(MODULE_NAME "TestCore") +set(MODULE_PREFIX "TEST_CORE") + +set(${MODULE_PREFIX}_DRIVER ${MODULE_NAME}.c) + +set(${MODULE_PREFIX}_TESTS + TestVersion.c) + +create_test_sourcelist(${MODULE_PREFIX}_SRCS + ${${MODULE_PREFIX}_DRIVER} + ${${MODULE_PREFIX}_TESTS}) + +add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) + +target_link_libraries(${MODULE_NAME} freerdp) + +set_target_properties(${MODULE_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${TESTING_OUTPUT_DIRECTORY}") + +foreach(test ${${MODULE_PREFIX}_TESTS}) + get_filename_component(TestName ${test} NAME_WE) + add_test(${TestName} ${TESTING_OUTPUT_DIRECTORY}/${MODULE_NAME} ${TestName}) +endforeach() + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "FreeRDP/Core/Test") + diff --git a/libfreerdp/core/test/TestVersion.c b/libfreerdp/core/test/TestVersion.c new file mode 100644 index 000000000..a3634ebd7 --- /dev/null +++ b/libfreerdp/core/test/TestVersion.c @@ -0,0 +1,38 @@ +#include +#include + +int TestVersion(int argc, char* argv[]) +{ + char *version; + char *git; + char *build; + int major = 0, minor = 0, revision = 0; + + freerdp_get_version(&major, &minor, &revision); + if (major != FREERDP_VERSION_MAJOR) + return -1; + + if (minor != FREERDP_VERSION_MINOR) + return -1; + + if (revision != FREERDP_VERSION_REVISION) + return -1; + + version = freerdp_get_version_string(); + if (!version) + return -1; + + git = freerdp_get_build_revision(); + if (!git) + return -1; + + if (strncmp(git, GIT_REVISION, sizeof(GIT_REVISION))) + return -1; + + build = freerdp_get_build_date(); + if (!build) + return -1; + + return 0; +} +