summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/CMakeLists.txt16
-rw-r--r--test/bmMenuNew.c23
2 files changed, 37 insertions, 2 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 8da6d4a..a70c749 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -1,5 +1,17 @@
-INCLUDE(CTest)
+SET(TESTS
+ "bmMenuNew"
+ )
-# TODO: write test CMakeLists
+INCLUDE_DIRECTORIES("${CMAKE_CURRENT_SOURCE_DIR}/../lib")
+FOREACH (test ${TESTS})
+ ADD_EXECUTABLE(${test}_test ${test}.c)
+ TARGET_LINK_LIBRARIES(${test}_test bemenu)
+
+ IF (WIN32)
+ ADD_TEST(${test}_test ${test}_test.exe)
+ ELSE ()
+ ADD_TEST(${test}_test ${test}_test)
+ ENDIF ()
+ENDFOREACH (test)
# vim: set ts=8 sw=4 tw=0 :
diff --git a/test/bmMenuNew.c b/test/bmMenuNew.c
new file mode 100644
index 0000000..f133584
--- /dev/null
+++ b/test/bmMenuNew.c
@@ -0,0 +1,23 @@
+#include <stdlib.h>
+#include <bemenu.h>
+#include <assert.h>
+
+int main(int argc, char **argv)
+{
+ (void)argc, (void)argv;
+
+ // TEST: Instance bmMenu with all possible draw modes.
+ {
+ bmDrawMode i;
+ for (i = 0; i < BM_DRAW_MODE_LAST; ++i) {
+ bmMenu *menu = bmMenuNew(BM_DRAW_MODE_NONE);
+ assert(menu != NULL);
+ bmMenuRender(menu);
+ bmMenuFree(menu);
+ }
+ }
+
+ return EXIT_SUCCESS;
+}
+
+/* vim: set ts=8 sw=4 tw=0 :*/