Greenbone Vulnerability Management Libraries 22.32.0
kb_tests.c
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2019-2025 Greenbone AG
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later
4 */
5
6#include "kb.c"
7
8#include <cgreen/assertions.h>
9#include <cgreen/cgreen.h>
10#include <cgreen/constraint_syntax_helpers.h>
11#include <cgreen/internal/c_assertions.h>
12#include <cgreen/mocks.h>
13
14#define TCP "tcp://"
15
18{
19}
20
22{
23}
24
25/* parse_port_of_addr */
26
28{
29 char *addr, *port;
30
31 addr = TCP "xxx:5";
32 port = parse_port_of_addr (addr, strlen (TCP));
33 assert_that (port, is_equal_to_string ("5"));
34}
35
36Ensure (kb, parse_port_of_addr_missing)
37{
38 char *addr, *port;
39
40 addr = TCP "xxx";
41 port = parse_port_of_addr (addr, strlen (TCP));
42 assert_that (port, is_null);
43}
44
45Ensure (kb, parse_port_of_addr_v6)
46{
47 char *addr, *port;
48
49 addr = TCP "[2001:db8::1]:8080";
50 port = parse_port_of_addr (addr, strlen (TCP));
51 assert_that (port, is_equal_to_string ("8080"));
52}
53
54/* Test suite. */
55int
56main (int argc, char **argv)
57{
58 int ret;
59 TestSuite *suite;
60
61 suite = create_test_suite ();
62
63 add_test_with_context (suite, kb, parse_port_of_addr);
64 add_test_with_context (suite, kb, parse_port_of_addr_missing);
65 add_test_with_context (suite, kb, parse_port_of_addr_v6);
66
67 if (argc > 1)
68 ret = run_single_test (suite, argv[1], create_text_reporter ());
69 else
70 ret = run_test_suite (suite, create_text_reporter ());
71
72 destroy_test_suite (suite);
73
74 return ret;
75}
Knowledge base management API - Redis backend.
static char * parse_port_of_addr(const char *addr, int tcp_indicator_len)
Definition kb.c:250
Ensure(kb, parse_port_of_addr)
Definition kb_tests.c:27
AfterEach(kb)
Definition kb_tests.c:21
BeforeEach(kb)
Definition kb_tests.c:17
#define TCP
Definition kb_tests.c:14
int main(int argc, char **argv)
Definition kb_tests.c:56
Describe(kb)
Top-level KB. This is to be inherited by KB implementations.
Definition kb.h:91