| Total Complexity | 1 |
| Total Lines | 29 |
| Duplicated Lines | 0 % |
| Coverage | 92.31% |
| Changes | 0 | ||
| 1 | # Copyright 2022, Red Hat, Inc. |
||
| 2 | # SPDX-License-Identifier: LGPL-2.1-or-later |
||
| 3 | |||
| 4 | 1 | from typing import List |
|
| 5 | |||
| 6 | 1 | from openscap_report.dataclasses import asdict, dataclass, field |
|
| 7 | |||
| 8 | 1 | GROUP_JSON_KEYS = [ |
|
| 9 | "group_id", |
||
| 10 | "title", |
||
| 11 | "description", |
||
| 12 | "platforms", |
||
| 13 | "rules_ids", |
||
| 14 | "sub_groups", |
||
| 15 | ] |
||
| 16 | |||
| 17 | |||
| 18 | 1 | @dataclass |
|
| 19 | 1 | class Group: |
|
| 20 | 1 | group_id: str |
|
| 21 | 1 | title: str = "" |
|
| 22 | 1 | description: str = "" |
|
| 23 | 1 | platforms: List[str] = field(default_factory=list) |
|
| 24 | 1 | rules_ids: List[str] = field(default_factory=list) |
|
| 25 | 1 | sub_groups: List['Group'] = field(default_factory=list) |
|
| 26 | |||
| 27 | 1 | def as_dict(self): |
|
| 28 | return asdict(self) |
||
| 29 |