File: pwpolicy_tests.c

package info (click to toggle)
gvm-libs 22.38.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 3,028 kB
  • sloc: ansic: 40,126; makefile: 26
file content (84 lines) | stat: -rw-r--r-- 1,783 bytes parent folder | download
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
/* SPDX-FileCopyrightText: 2019-2023 Greenbone AG
 *
 * SPDX-License-Identifier: GPL-2.0-or-later
 */

#include "pwpolicy.c"

#include <cgreen/assertions.h>
#include <cgreen/cgreen.h>
#include <cgreen/constraint_syntax_helpers.h>
#include <cgreen/internal/c_assertions.h>
#include <cgreen/mocks.h>

Describe (pwpolicy);
BeforeEach (pwpolicy)
{
}

AfterEach (pwpolicy)
{
}

/* parse_pattern_line */

Ensure (pwpolicy, parse_pattern_line_allows)
{
  char *desc, *error, *line;

  desc = NULL;
  line = g_strdup ("password");
  error = parse_pattern_line (line, "test", 111, &desc, "passw0rd", "name");
  assert_that (error, is_null);
  g_free (desc);
  g_free (line);
}

Ensure (pwpolicy, parse_pattern_line_refuses)
{
  char *desc, *error, *line;

  desc = NULL;
  line = g_strdup ("password");
  error = parse_pattern_line (line, "test", 111, &desc, "password", "name");
  assert_that (error, is_not_null);
  g_free (desc);
  g_free (error);
  g_free (line);
}

Ensure (pwpolicy, parse_pattern_line_comment)
{
  char *desc, *error, *line;

  desc = NULL;
  line = g_strdup ("# password");
  error = parse_pattern_line (line, "test", 111, &desc, "password", "name");
  assert_that (error, is_null);
  g_free (desc);
  g_free (error);
  g_free (line);
}

/* Test suite. */
int
main (int argc, char **argv)
{
  int ret;
  TestSuite *suite;

  suite = create_test_suite ();

  add_test_with_context (suite, pwpolicy, parse_pattern_line_allows);
  add_test_with_context (suite, pwpolicy, parse_pattern_line_refuses);
  add_test_with_context (suite, pwpolicy, parse_pattern_line_comment);

  if (argc > 1)
    ret = run_single_test (suite, argv[1], create_text_reporter ());
  else
    ret = run_test_suite (suite, create_text_reporter ());

  destroy_test_suite (suite);

  return ret;
}