~0x44/agent-smith/script_changes_for_testing

« back to all changes in this revision

Viewing changes to tests/check_slist.c

  • Committer: Soren Hansen
  • Date: 2010-06-01 13:34:01 UTC
  • Revision ID: soren.hansen@rackspace.com-20100601133401-1g1k68na2dqzapy3
ImportĀ currentĀ code.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include <stdlib.h>
 
2
#include <check.h>
 
3
#include "../src/slist.h"
 
4
 
 
5
START_TEST(test_slist_append)
 
6
{
 
7
        SList *list = NULL;
 
8
        char *testdata[] = { "foo", "bar", "baz" };
 
9
 
 
10
        list = slist_append(list, (void *) testdata[0]);
 
11
        fail_unless(list->data == testdata[0], "element's data attribute not correctly set");
 
12
        fail_unless(list->next == NULL, "element's next attribute not set to NULL");
 
13
        list = slist_append(list, (void *) testdata[1]);
 
14
        fail_unless(list->data == testdata[0], "element's data attribute not correctly set");
 
15
        fail_unless(list->next != NULL, "element's next attribute set to NULL");
 
16
        fail_unless(list->next->data == testdata[1], "element's data attribute not correctly set");
 
17
        fail_unless(list->next->next == NULL, "element's next attribute not set to NULL");
 
18
        list = slist_append(list, (void *) testdata[2]);
 
19
        fail_unless(list->data == testdata[0], "element's data attribute not correctly set");
 
20
        fail_unless(list->next != NULL, "element's next attribute set to NULL");
 
21
        fail_unless(list->next->data == testdata[1], "element's data attribute not correctly set");
 
22
        fail_unless(list->next->next != NULL, "element's next attribute set to NULL");
 
23
        fail_unless(list->next->next->data == testdata[2], "element's data attribute not correctly set");
 
24
        fail_unless(list->next->next->next == NULL, "element's next attribute not set to NULL");
 
25
}
 
26
END_TEST
 
27
 
 
28
Suite *slist_suite(void)
 
29
{
 
30
    Suite *s = suite_create("SList");
 
31
 
 
32
    TCase *tc_slist = tcase_create("slist");
 
33
    tcase_add_test(tc_slist, test_slist_append);
 
34
    suite_add_tcase(s, tc_slist);
 
35
 
 
36
    return s;
 
37
}
 
38
 
 
39
int main(void)
 
40
{
 
41
    int number_failed;
 
42
 
 
43
    Suite *s = slist_suite();
 
44
    SRunner *sr = srunner_create(s);
 
45
    srunner_run_all(sr, CK_NORMAL);
 
46
    number_failed = srunner_ntests_failed(sr);
 
47
    srunner_free(sr);
 
48
    return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
 
49
}