summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/Makefile.am4
-rw-r--r--tests/basic_tests.c75
-rw-r--r--tests/tests.c4
3 files changed, 81 insertions, 2 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index a8b790a7..aca5467b 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -11,12 +11,12 @@ INCLUDES = \
$(LASSO_CFLAGS) \
$(CHECK_CFLAGS)
-tests_SOURCES = tests.c login_tests.c
+tests_SOURCES = tests.c login_tests.c basic_tests.c
tests_LDADD = \
$(top_builddir)/lasso/liblasso.la \
$(LASSO_LIBS) \
$(CHECK_LIBS)
endif
-EXTRA_DIST = tests.c login_tests.c
+EXTRA_DIST = tests.c login_tests.c basic_Tests.c
diff --git a/tests/basic_tests.c b/tests/basic_tests.c
new file mode 100644
index 00000000..5a083619
--- /dev/null
+++ b/tests/basic_tests.c
@@ -0,0 +1,75 @@
+/*
+ * Lasso library C unit tests
+ *
+ * Copyright (C) 2004 Entr'ouvert
+ * http://lasso.entrouvert.org
+ *
+ * Author: Emmanuel Raviart <eraviart@entrouvert.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <stdlib.h>
+#include <string.h>
+
+#include <check.h>
+
+#include <lasso/lasso.h>
+
+
+START_TEST(test01_server_load_dump_empty_string)
+{
+ LassoServer *serverContext;
+ serverContext = lasso_server_new_from_dump("");
+ fail_unless(serverContext == NULL,
+ "serverContext was created from an empty string dump");
+}
+END_TEST
+
+START_TEST(test02_server_load_dump_random_string)
+{
+ LassoServer *serverContext;
+ serverContext = lasso_server_new_from_dump("foo");
+ fail_unless(serverContext == NULL,
+ "serverContext was created from a fake dump");
+}
+END_TEST
+
+START_TEST(test03_server_load_dump_random_xml)
+{
+ LassoServer *serverContext;
+ serverContext = lasso_server_new_from_dump("<?xml version=\"1.0\"?><foo/>");
+ fail_unless(serverContext == NULL,
+ "serverContext was created from fake (but valid XML) dump");
+}
+END_TEST
+
+
+Suite*
+basic_suite()
+{
+ Suite *s = suite_create("Basic");
+ TCase *tc_server_load_dump_empty_string = tcase_create("Create server from empty string");
+ TCase *tc_server_load_dump_random_string = tcase_create("Create server from random string");
+ TCase *tc_server_load_dump_random_xml = tcase_create("Create server from random XML");
+ suite_add_tcase(s, tc_server_load_dump_empty_string);
+ suite_add_tcase(s, tc_server_load_dump_random_string);
+ suite_add_tcase(s, tc_server_load_dump_random_xml);
+ tcase_add_test(tc_server_load_dump_empty_string, test01_server_load_dump_empty_string);
+ tcase_add_test(tc_server_load_dump_random_string, test02_server_load_dump_random_string);
+ tcase_add_test(tc_server_load_dump_random_xml, test03_server_load_dump_random_xml);
+ return s;
+}
+
diff --git a/tests/tests.c b/tests/tests.c
index dbe9c840..dbec4485 100644
--- a/tests/tests.c
+++ b/tests/tests.c
@@ -28,10 +28,13 @@
#include <check.h>
#include <lasso.h>
+extern Suite* basic_suite();
extern Suite* login_suite();
+
typedef Suite* (*SuiteFunction) ();
SuiteFunction suites[] = {
+ basic_suite,
login_suite,
NULL
};
@@ -57,6 +60,7 @@ main(int argc, char *argv[])
i = 1;
while (suites[i]) {
srunner_add_suite(sr, suites[i]());
+ i++;
}
if (dont_fork) {