Passed
Push — main ( 10c75c...401e8b )
by Jan
13:07 queued 06:03
created

tests.integration_tests.test_basic_usage   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 55
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 44
dl 0
loc 55
rs 10
c 0
b 0
f 0
wmc 1

1 Function

Rating   Name   Duplication   Size   Complexity  
A test_oscap_report_basic_usage() 0 26 1
1
# Copyright 2022, Red Hat, Inc.
2
# SPDX-License-Identifier: LGPL-2.1-or-later
3
4
import subprocess
5
6
import pytest
7
8
# pylint: disable-msg=R0801
9
from ..constants import (PATH_TO_ARF,
10
                         PATH_TO_ARF_REPRODUCING_DANGLING_REFERENCE_TO,
11
                         PATH_TO_ARF_SCANNED_ON_CONTAINER,
12
                         PATH_TO_ARF_WITH_MULTI_CHECK,
13
                         PATH_TO_ARF_WITH_OS_CPE_CHECK,
14
                         PATH_TO_ARF_WITHOUT_INFO,
15
                         PATH_TO_ARF_WITHOUT_SYSTEM_DATA,
16
                         PATH_TO_RULE_AND_CPE_CHECK_ARF,
17
                         PATH_TO_RULE_AND_CPE_CHECK_XCCDF,
18
                         PATH_TO_SIMPLE_RULE_FAIL_ARF,
19
                         PATH_TO_SIMPLE_RULE_FAIL_XCCDF,
20
                         PATH_TO_SIMPLE_RULE_PASS_ARF,
21
                         PATH_TO_SIMPLE_RULE_PASS_XCCDF, PATH_TO_XCCDF,
22
                         PATH_TO_XCCDF_WITH_MULTI_CHECK,
23
                         PATH_TO_XCCDF_WITHOUT_INFO,
24
                         PATH_TO_XCCDF_WITHOUT_SYSTEM_DATA)
25
26
OSCAP_REPORT_COMMAND = "oscap-report"
27
28
29
@pytest.mark.integration_test
30
@pytest.mark.parametrize(
31
    "file_path",
32
    [
33
        PATH_TO_ARF,
34
        PATH_TO_SIMPLE_RULE_FAIL_ARF,
35
        PATH_TO_SIMPLE_RULE_PASS_ARF,
36
        PATH_TO_RULE_AND_CPE_CHECK_ARF,
37
        PATH_TO_ARF_WITHOUT_INFO,
38
        PATH_TO_ARF_WITHOUT_SYSTEM_DATA,
39
        PATH_TO_ARF_WITH_MULTI_CHECK,
40
        PATH_TO_ARF_WITH_OS_CPE_CHECK,
41
        PATH_TO_ARF_SCANNED_ON_CONTAINER,
42
        PATH_TO_ARF_REPRODUCING_DANGLING_REFERENCE_TO,
43
        PATH_TO_XCCDF,
44
        PATH_TO_SIMPLE_RULE_FAIL_XCCDF,
45
        PATH_TO_SIMPLE_RULE_PASS_XCCDF,
46
        PATH_TO_RULE_AND_CPE_CHECK_XCCDF,
47
        PATH_TO_XCCDF_WITHOUT_INFO,
48
        PATH_TO_XCCDF_WITHOUT_SYSTEM_DATA,
49
        PATH_TO_XCCDF_WITH_MULTI_CHECK,
50
    ],
51
)
52
def test_oscap_report_basic_usage(file_path):
53
    command_stdout = subprocess.check_output([OSCAP_REPORT_COMMAND, str(file_path)])
54
    assert command_stdout.decode("utf-8").startswith("<!DOCTYPE html>")
55