tests: Add a test for failing group setup
authorJakub Hrozek <jakub.hrozek@posteo.se>
Sat, 7 Feb 2015 14:18:25 +0000 (15:18 +0100)
committerAndreas Schneider <asn@cryptomilk.org>
Sun, 8 Feb 2015 09:29:16 +0000 (10:29 +0100)
Signed-off-by: Jakub Hrozek <jakub.hrozek@posteo.se>
tests/CMakeLists.txt
tests/test_group_setup_fail.c [new file with mode: 0644]

index b95c96a..2525fe9 100644 (file)
@@ -8,6 +8,7 @@ include_directories(
 
 set(CMOCKA_TESTS
     test_alloc
+    test_group_setup_fail
     test_fixtures
     test_group_fixtures
     test_assert_macros
@@ -45,6 +46,13 @@ set_tests_properties(
         1
 )
 
+set_tests_properties(
+    test_group_setup_fail
+        PROPERTIES
+        WILL_FAIL
+        1
+)
+
 add_test (test_setup_fail_1_failed test_setup_fail)
 set_tests_properties(
     test_setup_fail_1_failed
diff --git a/tests/test_group_setup_fail.c b/tests/test_group_setup_fail.c
new file mode 100644 (file)
index 0000000..7815c03
--- /dev/null
@@ -0,0 +1,34 @@
+/* Use the unit test allocators */
+#define UNIT_TESTING 1
+
+#include <stdarg.h>
+#include <stddef.h>
+#include <setjmp.h>
+#include <cmocka.h>
+
+static int group_setup_failing(void **state)
+{
+    (void) state; /* unused */
+    return 1; /* To indicate the failure */
+}
+
+static void test_true(void **state)
+{
+    (void) state; /* unused */
+    assert_true(1);
+}
+
+static void test_false(void **state)
+{
+    (void) state; /* unused */
+    assert_false(0);
+}
+
+int main(void) {
+    const struct CMUnitTest tests[] = {
+        cmocka_unit_test(test_true),
+        cmocka_unit_test(test_false),
+    };
+
+    return cmocka_run_group_tests(tests, group_setup_failing, NULL);
+}