File: check_log.c

package info (click to toggle)
ezstream 1.0.2-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,832 kB
  • sloc: ansic: 9,693; sh: 4,967; xml: 398; makefile: 230
file content (92 lines) | stat: -rw-r--r-- 2,020 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include <check.h>
#include <errno.h>

#include "log.h"

Suite * log_suite(void);
void	setup_checked(void);
void	teardown_checked(void);

START_TEST(test_log)
{
	unsigned int	verbosity;

	ck_assert_int_eq(log_syserr(ALERT, 0, "alert"), 0);

	verbosity = 0;
	log_set_verbosity(verbosity);
	ck_assert_int_ne(log_alert("alert"), 0);
	ck_assert_int_ne(log_syserr(ALERT, EINVAL, "alert"), 0);
	ck_assert_int_ne(log_syserr(ALERT, EINVAL, NULL), 0);
	ck_assert_int_ne(log_error("error"), 0);
	ck_assert_int_ne(log_syserr(ERROR, EINVAL, "error"), 0);
	ck_assert_int_ne(log_warning("warning"), 0);
	ck_assert_int_ne(log_syserr(WARNING, EINVAL, "warning"), 0);

	ck_assert_int_eq(log_notice("notice"), 0);
	ck_assert_int_eq(log_syserr(NOTICE, EINVAL, "notice"), 0);
	log_set_verbosity(++verbosity);
	ck_assert_int_ne(log_notice("notice"), 0);
	ck_assert_int_ne(log_syserr(NOTICE, EINVAL, "notice"), 0);

	ck_assert_int_eq(log_info("info"), 0);
	ck_assert_int_eq(log_syserr(INFO, EINVAL, "info"), 0);
	log_set_verbosity(++verbosity);
	ck_assert_int_ne(log_info("info"), 0);
	ck_assert_int_ne(log_syserr(INFO, EINVAL, "info"), 0);

	ck_assert_int_eq(log_debug("debug"), 0);
	ck_assert_int_eq(log_syserr(DEBUG, EINVAL, "debug"), 0);
	log_set_verbosity(++verbosity);
	ck_assert_int_ne(log_debug("debug"), 0);
	ck_assert_int_ne(log_syserr(DEBUG, EINVAL, "debug"), 0);
}
END_TEST

Suite *
log_suite(void)
{
	Suite	*s;
	TCase	*tc_log;

	s = suite_create("Log");

	tc_log = tcase_create("Log");
	tcase_add_checked_fixture(tc_log, setup_checked, teardown_checked);
	tcase_add_test(tc_log, test_log);
	suite_add_tcase(s, tc_log);

	return (s);
}

void
setup_checked(void)
{
	if (0 < log_init("check_log"))
		ck_abort_msg("setup_checked failed");
}

void
teardown_checked(void)
{
	log_exit();
}

int
main(void)
{
	int	 num_failed;
	Suite	*s;
	SRunner *sr;

	s = log_suite();
	sr = srunner_create(s);

	srunner_run_all(sr, CK_NORMAL);
	num_failed = srunner_ntests_failed(sr);
	srunner_free(sr);

	if (num_failed)
		return (1);
	return (0);
}