Passed
Pull Request — master (#160)
by Jan
03:42
created

oval_graph.command_line_client.json_to_html   A

Complexity

Total Complexity 9

Size/Duplication

Total Lines 46
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 36
dl 0
loc 46
ccs 32
cts 32
cp 1
rs 10
c 0
b 0
f 0
wmc 9

8 Methods

Rating   Name   Duplication   Size   Complexity  
A JsonToHtml.__init__() 0 3 1
A JsonToHtml._get_message() 0 6 1
A JsonToHtml._put_to_dict_oval_trees() 0 3 1
A JsonToHtml.create_dict_of_oval_node() 0 3 1
A JsonToHtml.load_json_to_oval_tree() 0 6 2
A JsonToHtml._get_src_for_one_graph() 0 2 1
A JsonToHtml.create_dict_of_rule() 0 3 1
A JsonToHtml.prepare_parser() 0 4 1
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 1
        self.prepare_args_all_in_one()
45
        self.prepare_args_display()
46