]> git.proxmox.com Git - mirror_frr.git/blob - pceplib/test/pcep_socket_comm_tests.c
Merge pull request #12798 from donaldsharp/rib_match_multicast
[mirror_frr.git] / pceplib / test / pcep_socket_comm_tests.c
1 // SPDX-License-Identifier: LGPL-2.1-or-later
2 /*
3 * This file is part of the PCEPlib, a PCEP protocol library.
4 *
5 * Copyright (C) 2020 Volta Networks https://voltanet.io/
6 *
7 * Author : Brady Johnson <brady@voltanet.io>
8 *
9 */
10
11
12 #ifdef HAVE_CONFIG_H
13 #include "config.h"
14 #endif
15
16 #include <CUnit/Basic.h>
17 #include <CUnit/CUnit.h>
18 #include <CUnit/TestDB.h>
19
20 #include "pcep_socket_comm_loop_test.h"
21 #include "pcep_socket_comm_test.h"
22
23
24 int main(int argc, char **argv)
25 {
26 /* Unused parameters cause compilation warnings */
27 (void)argc;
28 (void)argv;
29
30 CU_initialize_registry();
31
32 /*
33 * Tests defined in pcep_socket_comm_test.c
34 */
35 CU_pSuite test_socket_comm_suite = CU_add_suite_with_setup_and_teardown(
36 "PCEP Socket Comm Test Suite", NULL,
37 NULL, // suite setup and cleanup function pointers
38 pcep_socket_comm_test_setup, // test case setup function pointer
39 pcep_socket_comm_test_teardown); // test case teardown function
40 // pointer
41
42 CU_add_test(test_socket_comm_suite, "test_pcep_socket_comm_initialize",
43 test_pcep_socket_comm_initialize);
44 CU_add_test(test_socket_comm_suite,
45 "test_pcep_socket_comm_initialize_ipv6",
46 test_pcep_socket_comm_initialize_ipv6);
47 CU_add_test(test_socket_comm_suite,
48 "test_pcep_socket_comm_initialize_with_src",
49 test_pcep_socket_comm_initialize_with_src);
50 CU_add_test(test_socket_comm_suite,
51 "test_pcep_socket_comm_initialize_with_src_ipv6",
52 test_pcep_socket_comm_initialize_with_src_ipv6);
53 CU_add_test(test_socket_comm_suite,
54 "test_pcep_socket_comm_initialize_tcpmd5",
55 test_pcep_socket_comm_initialize_tcpmd5);
56 CU_add_test(test_socket_comm_suite,
57 "test_pcep_socket_comm_initialize_ipv6_tcpmd5",
58 test_pcep_socket_comm_initialize_ipv6_tcpmd5);
59 CU_add_test(test_socket_comm_suite,
60 "test_pcep_socket_comm_initialize_handlers",
61 test_pcep_socket_comm_initialize_handlers);
62 CU_add_test(test_socket_comm_suite,
63 "test_pcep_socket_comm_session_not_initialized",
64 test_pcep_socket_comm_session_not_initialized);
65 CU_add_test(test_socket_comm_suite,
66 "test_pcep_socket_comm_session_destroy",
67 test_pcep_socket_comm_session_destroy);
68
69 /*
70 * Tests defined in pcep_socket_comm_loop_test.c
71 */
72 CU_pSuite test_socket_comm_loop_suite =
73 CU_add_suite_with_setup_and_teardown(
74 "PCEP Socket Comm Loop Test Suite", NULL, NULL,
75 pcep_socket_comm_loop_test_setup, // suite setup
76 // function pointer
77 pcep_socket_comm_loop_test_teardown); // suite cleanup
78 // function
79 // pointer
80
81 CU_add_test(test_socket_comm_loop_suite,
82 "test_socket_comm_loop_null_handle",
83 test_socket_comm_loop_null_handle);
84 CU_add_test(test_socket_comm_loop_suite,
85 "test_socket_comm_loop_not_active",
86 test_socket_comm_loop_not_active);
87 CU_add_test(test_socket_comm_loop_suite, "test_handle_reads_no_read",
88 test_handle_reads_no_read);
89 CU_add_test(test_socket_comm_loop_suite,
90 "test_handle_reads_read_message",
91 test_handle_reads_read_message);
92 CU_add_test(test_socket_comm_loop_suite,
93 "test_handle_reads_read_message_close",
94 test_handle_reads_read_message_close);
95
96 /*
97 * Run the tests and cleanup.
98 */
99 CU_basic_set_mode(CU_BRM_VERBOSE);
100 CU_basic_run_tests();
101 CU_FailureRecord *failure_record = CU_get_failure_list();
102 if (failure_record != NULL) {
103 printf("\nFailed tests:\n\t [Suite] [Test] [File:line-number]\n");
104 do {
105 printf("\t [%s] [%s] [%s:%d]\n",
106 failure_record->pSuite->pName,
107 failure_record->pTest->pName,
108 failure_record->strFileName,
109 failure_record->uiLineNumber);
110 failure_record = failure_record->pNext;
111
112 } while (failure_record != NULL);
113 }
114
115 CU_pRunSummary run_summary = CU_get_run_summary();
116 int result = run_summary->nTestsFailed;
117 CU_cleanup_registry();
118
119 return result;
120 }