Passed
Pull Request — master (#156)
by Jan
04:28 queued 02:01
created

JsonToHtml.prepare_parser()   A

Complexity

Conditions 1

Size

Total Lines 3
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 3
nop 1
dl 0
loc 3
ccs 3
cts 3
cp 1
crap 1
rs 10
c 0
b 0
f 0
1 1
from ..oval_node import restore_dict_to_tree
2 1
from ..converter import Converter
3 1
from ..exceptions import NotChecked
4 1
from .client_html_output import ClientHtmlOutput
5 1
from .client_json_input import ClientJsonInput
6
7
8 1
class JsonToHtml(ClientHtmlOutput, ClientJsonInput):
9 1
    def __init__(self, args):
10 1
        super().__init__(args)
11 1
        self.oval_tree = None
12
13 1
    def _get_message(self):
14 1
        MESSAGES = {
15
            'description': 'Client for visualization of JSON created by command arf-to-json',
16
            'source_filename': 'JSON file',
17
        }
18 1
        return MESSAGES
19
20 1
    def load_json_to_oval_tree(self, rule):
21 1
        dict_of_tree = self.json_data_file[rule]
22 1
        try:
23 1
            return restore_dict_to_tree(dict_of_tree)
24 1
        except Exception as error:
25 1
            raise ValueError('Data is not valid for OVAL tree.')
26
27 1
    def create_dict_of_oval_node(self, oval_node):
28 1
        converter = Converter(oval_node)
29 1
        return converter.to_JsTree_dict(self.hide_passing_tests)
30
31 1
    def create_dict_of_rule(self, rule):
32 1
        self.oval_tree = self.load_json_to_oval_tree(rule)
33 1
        return self.create_dict_of_oval_node(self.oval_tree)
34
35 1
    def _put_to_dict_oval_trees(self, dict_oval_trees, rule):
36 1
        dict_oval_trees[rule.replace(
37
            self.START_OF_FILE_NAME, '')] = self.create_dict_of_rule(rule)
38
39 1
    def _get_src_for_one_graph(self, rule):
40 1
        return self.get_save_src(rule.replace(self.START_OF_FILE_NAME, ''))
41
42 1
    def prepare_parser(self):
43 1
        super().prepare_parser()
44
        self.prepare_args_when_output_is_html()
45