瀏覽代碼

Added support for Python 3.
Working in Arch Linux there were some test cases with slightly different results in terms of sequence of output information in view mode...
For now I've written new gold files and will run the tests on windows to get the same results on both platsforms.

prozessorkern 5 年之前
父節點
當前提交
d76bd18ff8
共有 100 個文件被更改,包括 5299 次插入5282 次删除
  1. 3 0
      .gitignore
  2. 2 2
      ext/std/code/cpp.py
  3. 2 2
      ext/std/code/cs.py
  4. 1 1
      ext/std/code/debug.py
  5. 2 2
      ext/std/code/java.py
  6. 3 3
      ext/std/code/test.py
  7. 4 4
      ext/std/tools/collect.py
  8. 1 1
      ext/std/tools/export.py
  9. 1 1
      ext/std/tools/info.py
  10. 1 1
      ext/std/tools/limit.py
  11. 1 1
      ext/std/tools/test.py
  12. 48 41
      ext/std/tools/view.py
  13. 3 3
      metrixpp.py
  14. 20 20
      mpp/api.py
  15. 1 1
      mpp/cout.py
  16. 9 9
      mpp/internal/dbwrap.py
  17. 7 5
      mpp/internal/loader.py
  18. 3 3
      mpp/internal/py2txt.py
  19. 6 3
      mpp/internal/py2xml.py
  20. 1 1
      mpp/log.py
  21. 2 2
      mpp/utils.py
  22. 14 14
      tests/common.py
  23. 14 14
      tests/general/test_basic/test_help_--help_default_stdout.gold.txt
  24. 144 144
      tests/general/test_basic/test_help_collect_default_stdout.gold.txt
  25. 18 18
      tests/general/test_basic/test_help_export_default_stdout.gold.txt
  26. 18 18
      tests/general/test_basic/test_help_info_default_stdout.gold.txt
  27. 56 54
      tests/general/test_basic/test_help_limit_default_stdout.gold.txt
  28. 36 36
      tests/general/test_basic/test_help_view_default_stdout.gold.txt
  29. 16 16
      tests/general/test_basic/test_std_code_magic_view_default_stdout.gold.txt
  30. 96 96
      tests/general/test_basic/test_std_code_magic_view_nest_per_file_stdout.gold.txt
  31. 94 94
      tests/general/test_basic/test_std_code_magic_view_nozeros_nest_per_file_stdout.gold.txt
  32. 14 14
      tests/general/test_basic/test_std_code_magic_view_nozeros_stdout.gold.txt
  33. 16 16
      tests/general/test_basic/test_std_complexity_maxindent_view_default_stdout.gold.txt
  34. 95 95
      tests/general/test_basic/test_std_complexity_maxindent_view_nest_per_file_stdout.gold.txt
  35. 120 120
      tests/general/test_basic/test_std_filelines_metrics_view_nest_per_file_stdout.gold.txt
  36. 44 44
      tests/general/test_basic/test_std_filelines_metrics_view_txt_stdout.gold.txt
  37. 108 108
      tests/general/test_basic/test_std_general_metrics_view_nest_per_file_stdout.gold.txt
  38. 32 32
      tests/general/test_basic/test_std_general_metrics_view_txt_stdout.gold.txt
  39. 173 173
      tests/general/test_basic/test_std_lines_metrics_view_nest_per_file_stdout.gold.txt
  40. 59 59
      tests/general/test_basic/test_std_lines_metrics_view_txt_stdout.gold.txt
  41. 157 157
      tests/general/test_basic/test_std_member_metrics_view_nest_per_file_stdout.gold.txt
  42. 74 74
      tests/general/test_basic/test_std_member_metrics_view_txt_stdout.gold.txt
  43. 115 115
      tests/general/test_basic/test_view_format_view_nest_per_file_stdout.gold.txt
  44. 27 27
      tests/general/test_basic/test_view_format_view_nest_stdout.gold.txt
  45. 1 1
      tests/general/test_basic/test_view_format_view_python_stdout.gold.txt
  46. 16 16
      tests/general/test_basic/test_view_format_view_txt_stdout.gold.txt
  47. 24 24
      tests/general/test_basic/test_view_format_view_xml_stdout.gold.txt
  48. 6 6
      tests/general/test_basic/test_workflow_collect_default_stderr.gold.txt
  49. 5 5
      tests/general/test_basic/test_workflow_collect_second_stderr.gold.txt
  50. 3 3
      tests/general/test_basic/test_workflow_export_default_stderr.gold.txt
  51. 19 19
      tests/general/test_basic/test_workflow_export_default_stdout.gold.txt
  52. 3 3
      tests/general/test_basic/test_workflow_export_second_stderr.gold.txt
  53. 18 18
      tests/general/test_basic/test_workflow_export_second_stdout.gold.txt
  54. 3 3
      tests/general/test_basic/test_workflow_info_default_stderr.gold.txt
  55. 31 31
      tests/general/test_basic/test_workflow_info_default_stdout.gold.txt
  56. 3 3
      tests/general/test_basic/test_workflow_info_second_stderr.gold.txt
  57. 31 31
      tests/general/test_basic/test_workflow_info_second_stdout.gold.txt
  58. 4 4
      tests/general/test_basic/test_workflow_limit_default_stderr.gold.txt
  59. 74 74
      tests/general/test_basic/test_workflow_limit_default_stdout.gold.txt
  60. 4 4
      tests/general/test_basic/test_workflow_limit_second_stderr.gold.txt
  61. 56 56
      tests/general/test_basic/test_workflow_limit_second_stdout.gold.txt
  62. 4 4
      tests/general/test_basic/test_workflow_limit_second_warn_all_stderr.gold.txt
  63. 56 56
      tests/general/test_basic/test_workflow_limit_second_warn_all_stdout.gold.txt
  64. 5 5
      tests/general/test_basic/test_workflow_limit_second_warn_new_stderr.gold.txt
  65. 20 20
      tests/general/test_basic/test_workflow_limit_second_warn_new_stdout.gold.txt
  66. 5 5
      tests/general/test_basic/test_workflow_limit_second_warn_touched_stderr.gold.txt
  67. 38 38
      tests/general/test_basic/test_workflow_limit_second_warn_touched_stdout.gold.txt
  68. 5 5
      tests/general/test_basic/test_workflow_limit_second_warn_trend_stderr.gold.txt
  69. 29 29
      tests/general/test_basic/test_workflow_limit_second_warn_trend_stdout.gold.txt
  70. 3 3
      tests/general/test_basic/test_workflow_view_default_stderr.gold.txt
  71. 76 76
      tests/general/test_basic/test_workflow_view_default_stdout.gold.txt
  72. 3 3
      tests/general/test_basic/test_workflow_view_second_per_file_stderr.gold.txt
  73. 184 184
      tests/general/test_basic/test_workflow_view_second_per_file_stdout.gold.txt
  74. 3 3
      tests/general/test_basic/test_workflow_view_second_per_file_txt_all_stderr.gold.txt
  75. 214 214
      tests/general/test_basic/test_workflow_view_second_per_file_txt_all_stdout.gold.txt
  76. 4 4
      tests/general/test_basic/test_workflow_view_second_per_file_txt_new_stderr.gold.txt
  77. 200 200
      tests/general/test_basic/test_workflow_view_second_per_file_txt_new_stdout.gold.txt
  78. 4 4
      tests/general/test_basic/test_workflow_view_second_per_file_txt_touched_stderr.gold.txt
  79. 209 209
      tests/general/test_basic/test_workflow_view_second_per_file_txt_touched_stdout.gold.txt
  80. 3 3
      tests/general/test_basic/test_workflow_view_second_stderr.gold.txt
  81. 87 87
      tests/general/test_basic/test_workflow_view_second_stdout.gold.txt
  82. 3 3
      tests/general/test_basic/test_workflow_view_second_txt_all_stderr.gold.txt
  83. 90 90
      tests/general/test_basic/test_workflow_view_second_txt_all_stdout.gold.txt
  84. 5 5
      tests/general/test_basic/test_workflow_view_second_txt_new_stderr.gold.txt
  85. 83 83
      tests/general/test_basic/test_workflow_view_second_txt_new_stdout.gold.txt
  86. 6 6
      tests/general/test_basic/test_workflow_view_second_txt_touched_stderr.gold.txt
  87. 89 89
      tests/general/test_basic/test_workflow_view_second_txt_touched_stdout.gold.txt
  88. 1 1
      tests/general/test_std_code_cpp.py
  89. 6 6
      tests/general/test_std_code_cpp/test_parser_collect_default_stdout.gold.txt
  90. 110 110
      tests/general/test_std_code_cpp/test_parser_limit_default_stdout.gold.txt
  91. 27 27
      tests/general/test_std_code_cpp/test_parser_view_default_stdout.gold.txt
  92. 889 889
      tests/general/test_std_code_cpp/test_parser_view_files_stdout.gold.txt
  93. 1 1
      tests/general/test_std_code_cs.py
  94. 146 146
      tests/general/test_std_code_cs/test_parser_limit_default_stdout.gold.txt
  95. 29 29
      tests/general/test_std_code_cs/test_parser_view_default_stdout.gold.txt
  96. 461 461
      tests/general/test_std_code_cs/test_parser_view_files_stdout.gold.txt
  97. 1 1
      tests/general/test_std_code_cs_unit.py
  98. 21 21
      tests/general/test_std_code_cs_unit/test_parser_view_default_stdout.gold.txt
  99. 217 217
      tests/general/test_std_code_cs_unit/test_parser_view_files_stdout.gold.txt
  100. 0 0
      tests/general/test_std_code_java.py

+ 3 - 0
.gitignore

@@ -0,0 +1,3 @@
+__pycache__
+*.pyc
+metrixpp.db

+ 2 - 2
ext/std/code/cpp.py

@@ -96,9 +96,9 @@ class CppCodeParser(object):
         crc32 = 0
         for child in block['children']:
             # exclude children
-            crc32 = binascii.crc32(text[start_pos:child['start']], crc32)
+            crc32 = binascii.crc32(text[start_pos:child['start']].encode('utf8'), crc32)
             start_pos = child['end']
-        block['checksum'] = binascii.crc32(text[start_pos:block['end']], crc32) & 0xffffffff # to match python 3
+        block['checksum'] = binascii.crc32(text[start_pos:block['end']].encode('utf8'), crc32) & 0xffffffff # to match python 3
         
     def add_lines_data(self, text, blocks):
         def add_lines_data_rec(self, text, blocks):

+ 2 - 2
ext/std/code/cs.py

@@ -107,9 +107,9 @@ class CsCodeParser(object):
         crc32 = 0
         for child in block['children']:
             # exclude children
-            crc32 = binascii.crc32(text[start_pos:child['start']], crc32)
+            crc32 = binascii.crc32(text[start_pos:child['start']].encode('utf8'), crc32)
             start_pos = child['end']
-        block['checksum'] = binascii.crc32(text[start_pos:block['end']], crc32) & 0xffffffff # to match python 3
+        block['checksum'] = binascii.crc32(text[start_pos:block['end']].encode('utf8'), crc32) & 0xffffffff # to match python 3
         
     def add_lines_data(self, text, blocks):
         def add_lines_data_rec(self, text, blocks):

+ 1 - 1
ext/std/code/debug.py

@@ -103,6 +103,6 @@ def dumphtml(args, loader):
         result += proc_rec(1, data, styles, 0, 0)
         result += ('</pre></td></tr></table>')
     result += ('</body></html>')
-    print result
+    print(result)
     return exit_code
             

+ 2 - 2
ext/std/code/java.py

@@ -84,9 +84,9 @@ class JavaCodeParser(object):
         crc32 = 0
         for child in block['children']:
             # exclude children
-            crc32 = binascii.crc32(text[start_pos:child['start']], crc32)
+            crc32 = binascii.crc32(text[start_pos:child['start']].encode('utf8'), crc32)
             start_pos = child['end']
-        block['checksum'] = binascii.crc32(text[start_pos:block['end']], crc32) & 0xffffffff # to match python 3
+        block['checksum'] = binascii.crc32(text[start_pos:block['end']].encode('utf8'), crc32) & 0xffffffff # to match python 3
         
     def add_lines_data(self, text, blocks):
         def add_lines_data_rec(self, text, blocks):

+ 3 - 3
ext/std/code/test.py

@@ -29,7 +29,7 @@ class Plugin(mpp.api.Plugin, mpp.api.Child):
                              " " + str(marker.get_offset_begin()) + " " + str(marker.get_offset_end()) +
                              " >>>" + text[marker.get_offset_begin():marker.get_offset_end()] + "<<<")
                 text_comb += text[marker.get_offset_begin():marker.get_offset_end()]
-        print "LENGTH:", len(text), len(text_comb)
+        print("LENGTH:", len(text), len(text_comb))
 
         text_comb = ""
         for marker in data.iterate_markers(region_id=1,
@@ -39,7 +39,7 @@ class Plugin(mpp.api.Plugin, mpp.api.Child):
                          " " + str(marker.get_offset_begin()) + " " + str(marker.get_offset_end()) +
                          " >>>" + text[marker.get_offset_begin():marker.get_offset_end()] + "<<<")
             text_comb += text[marker.get_offset_begin():marker.get_offset_end()]
-        print "LENGTH:", len(text), len(text_comb)
+        print("LENGTH:", len(text), len(text_comb))
 
         text_comb = ""
         for region in data.iterate_regions():
@@ -52,4 +52,4 @@ class Plugin(mpp.api.Plugin, mpp.api.Child):
                              " " + str(marker.get_offset_begin()) + " " + str(marker.get_offset_end()) +
                              " >>>" + text[marker.get_offset_begin():marker.get_offset_end()] + "<<<")
                 text_comb += text[marker.get_offset_begin():marker.get_offset_end()]
-        print "LENGTH:", len(text), len(text_comb)
+        print("LENGTH:", len(text), len(text_comb))

+ 4 - 4
ext/std/tools/collect.py

@@ -114,7 +114,7 @@ class DirectoryReader():
     def run(self, plugin, directory):
         
         IS_TEST_MODE = False
-        if 'METRIXPLUSPLUS_TEST_MODE' in os.environ.keys():
+        if 'METRIXPLUSPLUS_TEST_MODE' in list(os.environ.keys()):
             IS_TEST_MODE = True
 
         def run_per_file(plugin, fname, full_path):
@@ -136,10 +136,10 @@ class DirectoryReader():
                         f = open(full_path, 'rU');
                         text = f.read();
                         f.close()
-                        checksum = binascii.crc32(text) & 0xffffffff # to match python 3
+                        checksum = binascii.crc32(text.encode('utf8')) & 0xffffffff # to match python 3
                         
                         db_loader = plugin.get_plugin('mpp.dbf').get_loader()
-                        (data, is_updated) = db_loader.create_file_data(norm_path, checksum, text)
+                        (data, is_updated) = db_loader.create_file_data(norm_path, checksum, str(text))
                         procerrors = parser.process(plugin, data, is_updated)
                         if plugin.is_proctime_enabled == True:
                             data.set_data('std.general', 'proctime',
@@ -183,4 +183,4 @@ class DirectoryReader():
     
 
 
-    
+    

+ 1 - 1
ext/std/tools/export.py

@@ -27,7 +27,7 @@ class Plugin(mpp.api.Plugin, mpp.api.IRunable):
     def _export_to_stdout(self, paths):
         class StdoutWriter(object):
             def write(self, *args, **kwargs):
-                print args[0].strip()
+                print(args[0].strip())
         
         exit_code = 0
     

+ 1 - 1
ext/std/tools/info.py

@@ -30,7 +30,7 @@ class Plugin(mpp.api.Plugin, mpp.api.IRunable):
                     prev_value_str = " [modified (was: " + loader_prev.get_property(each.name) + ")]"
             details.append((each.name, each.value + prev_value_str))
         path = self.get_plugin('mpp.dbf').get_dbfile_path()
-        if ('METRIXPLUSPLUS_TEST_MODE' in os.environ.keys() and
+        if ('METRIXPLUSPLUS_TEST_MODE' in list(os.environ.keys()) and
              os.environ['METRIXPLUSPLUS_TEST_MODE'] == "True"):
             # in tests, paths come as full paths, strip it for consistent gold files
             # TODO: if there are other path-like arguments, it is better to think about other solution

+ 1 - 1
ext/std/tools/limit.py

@@ -291,7 +291,7 @@ def get_list_of_modified_files(loader, loader_prev):
     for each in loader.iterate_file_data():
         if len(modified_file_ids) > 1000: # If more than 1000 files changed, skip optimisation
             return None
-        if (each.get_path() not in old_files_map.keys()) or old_files_map[each.get_path()] != each.get_checksum():
+        if (each.get_path() not in list(old_files_map.keys())) or old_files_map[each.get_path()] != each.get_checksum():
             modified_file_ids.append(str(each.get_id()))
 
     old_files_map = None

+ 1 - 1
ext/std/tools/test.py

@@ -29,7 +29,7 @@ class Plugin(mpp.api.Plugin, mpp.api.IConfigurable, mpp.api.IRunable):
         tests_dir = os.path.join(os.environ['METRIXPLUSPLUS_INSTALL_DIR'], 'tests')
         process_data= ["python", "-m", "unittest", "discover", "-v", "-s"]
         if len(args) == 0 or tests_dir == os.path.abspath(args[0]):
-            for fname in os.listdir(tests_dir):
+            for fname in sorted(os.listdir(tests_dir)):
                 full_path = os.path.join(tests_dir, fname)
                 if os.path.isdir(full_path) and fname != "sources":
                     exit_code += subprocess.call(itertools.chain(process_data, [full_path]),

+ 48 - 41
ext/std/tools/view.py

@@ -61,7 +61,7 @@ class Plugin(mpp.api.Plugin, mpp.api.IConfigurable, mpp.api.IRunable):
             paths = [""]
         else:
             paths = args
-        
+
         (result, exit_code) = export_to_str(self.out_format,
                                             paths,
                                             loader,
@@ -69,7 +69,7 @@ class Plugin(mpp.api.Plugin, mpp.api.IConfigurable, mpp.api.IRunable):
                                             self.nest_regions,
                                             self.dist_columns,
                                             self.mode)
-        print result
+        print(result)
         return exit_code
 
 def export_to_str(out_format, paths, loader, loader_prev, nest_regions, dist_columns, mode):
@@ -192,8 +192,8 @@ def load_aggregated_data_with_mode(loader, loader_prev, path, mode):
                 assert(self.in_processing_mode == True)
                 sup_data = orig_data.get_data('std.suppress', 'list')
                 data = orig_data.get_data_tree()
-                for namespace in data.keys():
-                    for field in data[namespace].keys():
+                for namespace in list(data.keys()):
+                    for field in list(data[namespace].keys()):
                         aggr_data = self.get_data(namespace, field)
                         metric_value = data[namespace][field]
                         if isinstance(metric_value, str):
@@ -206,7 +206,7 @@ def load_aggregated_data_with_mode(loader, loader_prev, path, mode):
                         aggr_data['count'] += 1
                         aggr_data['total'] += metric_value
                         # average is calculated later on get_data_tree
-                        if metric_value not in aggr_data['distribution-bars'].keys():
+                        if metric_value not in list(aggr_data['distribution-bars'].keys()):
                             aggr_data['distribution-bars'][metric_value] = 0
                         aggr_data['distribution-bars'][metric_value] += 1
                         if sup_data != None:
@@ -340,16 +340,16 @@ def append_diff(main_tree, prev_tree):
     assert(main_tree != None)
     assert(prev_tree != None)
     
-    for name in main_tree.keys():
-        if name not in prev_tree.keys():
+    for name in list(main_tree.keys()):
+        if name not in list(prev_tree.keys()):
             continue
-        for field in main_tree[name].keys():
-            if field not in prev_tree[name].keys():
+        for field in list(main_tree[name].keys()):
+            if field not in list(prev_tree[name].keys()):
                 continue
             if isinstance(main_tree[name][field], dict) and isinstance(prev_tree[name][field], dict):
                 diff = {}
-                for key in main_tree[name][field].keys():
-                    if key not in prev_tree[name][field].keys():
+                for key in list(main_tree[name][field].keys()):
+                    if key not in list(prev_tree[name][field].keys()):
                         continue
                     main_val = main_tree[name][field][key]
                     prev_val = prev_tree[name][field][key]
@@ -373,7 +373,7 @@ def append_diff_list(main_list, prev_list):
     for bar in main_list:
         merged_list[bar['metric']] = {'count': bar['count'], '__diff__':bar['count'], 'ratio': bar['ratio']}
     for bar in prev_list:
-        if bar['metric'] in merged_list.keys():
+        if bar['metric'] in list(merged_list.keys()):
             merged_list[bar['metric']]['__diff__'] = \
                 merged_list[bar['metric']]['count'] - bar['count']
         else:
@@ -389,8 +389,8 @@ def append_diff_list(main_list, prev_list):
 def append_suppressions(path, data, loader, mode):
     if mode == Plugin.MODE_ALL:
         # in other modes, suppressions are appended during data loading
-        for namespace in data.keys():
-            for field in data[namespace].keys():
+        for namespace in list(data.keys()):
+            for field in list(data[namespace].keys()):
                 selected_data = loader.load_selected_data('std.suppress',
                                            fields = ['list'],
                                            path=path,
@@ -409,8 +409,8 @@ def compress_dist(data, columns):
     if columns == 0:
         return data
     
-    for namespace in data.keys():
-        for field in data[namespace].keys():
+    for namespace in list(data.keys()):
+        for field in list(data[namespace].keys()):
             metric_data = data[namespace][field]
             distr = metric_data['distribution-bars']
             columns = float(columns) # to trigger floating calculations
@@ -422,8 +422,8 @@ def compress_dist(data, columns):
             remaining_count = metric_data['count']
             next_consume = None
             next_bar = None
-            max_count = -sys.maxint - 1
-            min_count = sys.maxint
+            max_count = -sys.maxsize - 1
+            min_count = sys.maxsize
             sum_ratio = 0
             for (ind, bar) in enumerate(distr):
                 if next_bar == None:
@@ -432,7 +432,7 @@ def compress_dist(data, columns):
                                 'ratio': bar['ratio'],
                                 'metric_s': bar['metric'],
                                 'metric_f': bar['metric']}
-                    if '__diff__' in bar.keys():
+                    if '__diff__' in list(bar.keys()):
                         next_bar['__diff__'] = bar['__diff__']
                     next_consume = int(round(remaining_count/ (columns - len(new_dist))))
                 else:
@@ -440,7 +440,7 @@ def compress_dist(data, columns):
                     next_bar['count'] += bar['count']
                     next_bar['ratio'] += bar['ratio']
                     next_bar['metric_f'] = bar['metric']
-                    if '__diff__' in bar.keys():
+                    if '__diff__' in list(bar.keys()):
                         next_bar['__diff__'] += bar['__diff__']
                 
                 next_consume -= bar['count']
@@ -490,7 +490,7 @@ def compress_dist(data, columns):
                                     'ratio': bar['ratio'],
                                     'metric_s': next_end_limit,
                                     'metric_f': bar['metric']}
-                        if '__diff__' in bar.keys():
+                        if '__diff__' in list(bar.keys()):
                             next_bar['__diff__'] = bar['__diff__']
                         next_end_limit += step
                     else:
@@ -498,7 +498,7 @@ def compress_dist(data, columns):
                         next_bar['count'] += bar['count']
                         next_bar['ratio'] += bar['ratio']
                         next_bar['metric_f'] = bar['metric']
-                        if '__diff__' in bar.keys():
+                        if '__diff__' in list(bar.keys()):
                             next_bar['__diff__'] += bar['__diff__']
                     
                     if (next_bar['metric_f'] >= next_end_limit # consumed enough
@@ -530,15 +530,15 @@ def cout_txt_regions(path, regions, indent = 0):
             ('Line numbers', str(region['info']['line_begin']) + "-" + str(region['info']['line_end'])),
             ('Modified', str(region['info']['modified']))
         ]
-        for namespace in region['data'].keys():
+        for namespace in list(region['data'].keys()):
             diff_data = {}
-            if '__diff__' in region['data'][namespace].keys():
+            if '__diff__' in list(region['data'][namespace].keys()):
                 diff_data = region['data'][namespace]['__diff__']
-            for field in region['data'][namespace].keys():
+            for field in list(region['data'][namespace].keys()):
                 diff_str = ""
                 if field == '__diff__':
                     continue
-                if field in diff_data.keys():
+                if field in list(diff_data.keys()):
                     diff_str = " [" + ("+" if diff_data[field] >= 0 else "") + str(diff_data[field]) + "]"
                 details.append((namespace + ":" + field, str(region['data'][namespace][field]) + diff_str))
         mpp.cout.notify(path,
@@ -547,25 +547,25 @@ def cout_txt_regions(path, regions, indent = 0):
                         "Metrics per '" + region['info']['name']+ "' region",
                         details,
                         indent=indent)
-        if 'subregions' in region.keys():
+        if 'subregions' in list(region.keys()):
             cout_txt_regions(path, region['subregions'], indent=indent+1)
 
 def cout_txt(data, loader):
     
     details = []
-    for key in data['file-data'].keys():
+    for key in list(data['file-data'].keys()):
         if key == 'regions':
             cout_txt_regions(data['info']['path'], data['file-data'][key])
         else:
             namespace = key
             diff_data = {}
-            if '__diff__' in data['file-data'][namespace].keys():
+            if '__diff__' in list(data['file-data'][namespace].keys()):
                 diff_data = data['file-data'][namespace]['__diff__']
-            for field in data['file-data'][namespace].keys():
+            for field in list(data['file-data'][namespace].keys()):
                 diff_str = ""
                 if field == '__diff__':
                     continue
-                if field in diff_data.keys():
+                if field in list(diff_data.keys()):
                     diff_str = " [" + ("+" if diff_data[field] >= 0 else "") + str(diff_data[field]) + "]"
                 details.append((namespace + ":" + field, str(data['file-data'][namespace][field]) + diff_str))
     if len(details) > 0:
@@ -580,25 +580,32 @@ def cout_txt(data, loader):
                 'min': 'Minimum',
                 'max': 'Maximum',
     }
-    for namespace in data['aggregated-data'].keys():
-        for field in data['aggregated-data'][namespace].keys():
+    for namespace in list(data['aggregated-data'].keys()):
+        for field in list(data['aggregated-data'][namespace].keys()):
             details = []
             diff_data = {}
-            if '__diff__' in data['aggregated-data'][namespace][field].keys():
+            if '__diff__' in list(data['aggregated-data'][namespace][field].keys()):
                 diff_data = data['aggregated-data'][namespace][field]['__diff__']
             for attr in ['avg', 'min', 'max', 'total']:
                 diff_str = ""
-                if attr in diff_data.keys():
-                    diff_str = " [" + ("+" if diff_data[attr] >= 0 else "") + str(diff_data[attr]) + "]"
+                if attr in list(diff_data.keys()):
+                    if isinstance(diff_data[attr], float):
+                        diff_str = " [" + ("+" if diff_data[attr] >= 0 else "") + str(round(diff_data[attr], 10)) + "]"
+                    else:
+                        diff_str = " [" + ("+" if diff_data[attr] >= 0 else "") + str(diff_data[attr]) + "]"
                 if attr == 'avg' and data['aggregated-data'][namespace][field]['nonzero'] == True:
                     diff_str += " (excluding zero metric values)"
-                details.append((attr_map[attr], str(data['aggregated-data'][namespace][field][attr]) + diff_str))
+                if isinstance(data['aggregated-data'][namespace][field][attr], float):
+                    # round the data to 10 digits to reach same results on platforms with different precision
+                    details.append((attr_map[attr], str(round(data['aggregated-data'][namespace][field][attr], 10)) + diff_str))
+                else:
+                    details.append((attr_map[attr], str(data['aggregated-data'][namespace][field][attr]) + diff_str))
 
             measured = data['aggregated-data'][namespace][field]['count']
-            if 'count' in diff_data.keys():
+            if 'count' in list(diff_data.keys()):
                 diff_str = ' [{0:{1}}]'.format(diff_data['count'], '+' if diff_data['count'] >= 0 else '')
             sup_diff_str = ""
-            if 'sup' in diff_data.keys():
+            if 'sup' in list(diff_data.keys()):
                 sup_diff_str = ' [{0:{1}}]'.format(diff_data['sup'], '+' if diff_data['sup'] >= 0 else '')
             elem_name = 'regions'
             if loader.get_namespace(namespace).are_regions_supported() == False:
@@ -615,7 +622,7 @@ def cout_txt(data, loader):
             for bar in data['aggregated-data'][namespace][field]['distribution-bars']:
                 sum_ratio += bar['ratio']
                 diff_str = ""
-                if '__diff__' in bar.keys():
+                if '__diff__' in list(bar.keys()):
                     if bar['__diff__'] >= 0:
                         diff_str = ' [+{0:<{1}}]'.format(bar['__diff__'], count_str_len)
                     else:
@@ -647,4 +654,4 @@ def cout_txt(data, loader):
                 mpp.cout.SEVERITY_INFO,
                 "Directory content:",
                 details)
-    
+    

+ 3 - 3
metrixpp.py

@@ -35,7 +35,7 @@ def main():
 
     loader = mpp.internal.loader.Loader()
     mpp_paths = []
-    if 'METRIXPLUSPLUS_PATH' in os.environ.keys():
+    if 'METRIXPLUSPLUS_PATH' in list(os.environ.keys()):
         mpp_paths = os.environ['METRIXPLUSPLUS_PATH'].split(os.pathsep)
     args = loader.load(command, mpp_paths, sys.argv[3:])
     exit_code = loader.run(args)
@@ -48,11 +48,11 @@ def start():
 
     exit_code = main()
     time_spent = round((time.time() - ts), 2)
-    if 'METRIXPLUSPLUS_TEST_GENERATE_GOLDS' in os.environ.keys() and \
+    if 'METRIXPLUSPLUS_TEST_GENERATE_GOLDS' in list(os.environ.keys()) and \
         os.environ['METRIXPLUSPLUS_TEST_GENERATE_GOLDS'] == "True":
         time_spent = 1 # Constant value if under tests
     logging.warning("Done (" + str(time_spent) +" seconds). Exit code: " + str(exit_code))
     exit(exit_code)
 
 if __name__ == '__main__':
-    start()
+    start()

+ 20 - 20
mpp/api.py

@@ -101,9 +101,9 @@ class Data(object):
         self.data = {}
         
     def get_data(self, namespace, field):
-        if namespace not in self.data.keys():
+        if namespace not in list(self.data.keys()):
             return None
-        if field not in self.data[namespace].keys():
+        if field not in list(self.data[namespace].keys()):
             return None
         return self.data[namespace][field]
 
@@ -113,11 +113,11 @@ class Data(object):
         self.data[namespace][field] = value
 
     def iterate_namespaces(self):
-        for namespace in self.data.keys():
+        for namespace in list(self.data.keys()):
             yield namespace
             
     def iterate_fields(self, namespace):
-        for field in self.data[namespace].keys():
+        for field in list(self.data[namespace].keys()):
             yield (field, self.data[namespace][field])
 
     def get_data_tree(self, namespaces=None):
@@ -148,7 +148,7 @@ class LoadableData(Data):
         row = self.loader.db.get_row(namespace, self.file_id, self.region_id)
         if row == None:
             return
-        for column_name in row.keys():
+        for column_name in list(row.keys()):
             try:
                 packager = namespace_obj._get_field_packager(column_name)
             except mpp.internal.api_impl.PackagerError:
@@ -699,7 +699,7 @@ class Namespace(object):
         if not isinstance(field_name, str):
             raise Namespace.FieldError(field_name, "field_name not a string")
         packager = mpp.internal.api_impl.PackagerFactory().create(python_type, non_zero)
-        if field_name in self.fields.keys():
+        if field_name in list(self.fields.keys()):
             raise Namespace.FieldError(field_name, "double used")
         self.fields[field_name] = packager
         
@@ -710,7 +710,7 @@ class Namespace(object):
         return None # if double request
     
     def iterate_field_names(self):
-        for name in self.fields.keys():
+        for name in list(self.fields.keys()):
             yield name
     
     def check_field(self, field_name):
@@ -740,7 +740,7 @@ class Namespace(object):
             raise Namespace.FieldError(field_name, 'does not exist')
 
     def _get_field_packager(self, field_name):
-        if field_name in self.fields.keys():
+        if field_name in list(self.fields.keys()):
             return self.fields[field_name]
         else:
             raise mpp.internal.api_impl.PackagerError("unknown field " + field_name + " requested")
@@ -793,18 +793,18 @@ class Loader(object):
         if self.db == None:
             return None
         
-        if name in self.namespaces.keys():
+        if name in list(self.namespaces.keys()):
             raise Namespace.NamespaceError(name, "double used")
-        new_namespace = Namespace(self.db, name, support_regions, version)
+        new_namespace = Namespace(self.db, str(name), support_regions, version)
         self.namespaces[name] = new_namespace
         return new_namespace
     
     def iterate_namespace_names(self):
-        for name in self.namespaces.keys():
+        for name in list(self.namespaces.keys()):
             yield name
 
     def get_namespace(self, name):
-        if name in self.namespaces.keys():
+        if name in list(self.namespaces.keys()):
             return self.namespaces[name]
         else:
             return None
@@ -939,13 +939,13 @@ class Loader(object):
             final_path_like = path + path_like_filter
         
         if namespaces == None:
-            namespaces = self.namespaces.keys()
+            namespaces = list(self.namespaces.keys())
         
         result = AggregatedData(self, path)
         for name in namespaces:
             namespace = self.get_namespace(name)
             data = self.db.aggregate_rows(name, path_like = final_path_like)
-            for field in data.keys():
+            for field in list(data.keys()):
                 if namespace.get_field_python_type(field) == str:
                     continue
                 data[field]['nonzero'] = namespace.is_field_non_zero(field)
@@ -1176,7 +1176,7 @@ class MetricPluginMixin(Parent):
         else:
             map_of_patterns = {'*': pattern_to_search_or_map_of_patterns}
         # client may suply with pattern or pair of pattern + counter class
-        for key in map_of_patterns.keys():
+        for key in list(map_of_patterns.keys()):
             if isinstance(map_of_patterns[key], tuple) == False:
                 # if it is not a pair, create a pair using default counter class
                 map_of_patterns[key] = (map_of_patterns[key],
@@ -1192,12 +1192,12 @@ class MetricPluginMixin(Parent):
             
     def is_active(self, metric_name = None):
         if metric_name == None:
-            return (len(self._fields.keys()) > 0)
-        return (metric_name in self._fields.keys())
+            return (len(list(self._fields.keys())) > 0)
+        return (metric_name in list(self._fields.keys()))
     
     def get_fields(self):
         result = []
-        for key in self._fields.keys():
+        for key in list(self._fields.keys()):
             result.append(self._fields[key][0])
         return result
     
@@ -1220,8 +1220,8 @@ class MetricPluginMixin(Parent):
             return
         
         field_data = self._fields[field]
-        if alias not in field_data[4].keys():
-            if '*' not in field_data[4].keys():
+        if alias not in list(field_data[4].keys()):
+            if '*' not in list(field_data[4].keys()):
                 raise self.AliasError(alias)
             else:
                 alias = '*'

+ 1 - 1
mpp/cout.py

@@ -26,4 +26,4 @@ def notify(path, cursor, level, message, details = [], indent = 0):
         notification += (("    " * indent) + "\t" +
                          str(each[0]) + (" " * (DETAILS_OFFSET - len(each[0]))) + ": " + str(each[1]) + "\n")
         
-    print notification
+    print(notification)

+ 9 - 9
mpp/internal/dbwrap.py

@@ -186,7 +186,7 @@ class Database(object):
             for row in rows:
                 cur_head = db_loader.dirs
                 for dir_name in self.iterate_heads(row["path"]):
-                    if dir_name not in cur_head.keys():
+                    if dir_name not in list(cur_head.keys()):
                         cur_head[dir_name] = {}
                     cur_head = cur_head[dir_name]
                 cur_head[os.path.basename(row["path"])] = None
@@ -343,7 +343,7 @@ class Database(object):
         
         sql = "SELECT id FROM __tables__ WHERE (name = '" + table_name + "')"
         self.log(sql)
-        table_id = self.conn.execute(sql).next()['id']
+        table_id = next(self.conn.execute(sql))['id']
 
         sql = "SELECT * FROM __columns__ WHERE (table_id = '" + str(table_id) + "' AND name = '" + column_name + "' AND confirmed == 0)"
         self.log(sql)
@@ -363,7 +363,7 @@ class Database(object):
         self.conn.execute(sql)
         sql = "SELECT id FROM __tables__ WHERE (name = '" + table_name + "')"
         self.log(sql)
-        table_id = self.conn.execute(sql).next()['id']
+        table_id = next(self.conn.execute(sql))['id']
         sql = "INSERT INTO __columns__ (name, type, table_id, non_zero, confirmed) VALUES ('" + column_name + "', '" + column_type + "', '" + str(table_id) + "', '" + str(int(non_zero)) + "', 1)"
         self.log(sql)
         self.conn.execute(sql)
@@ -372,7 +372,7 @@ class Database(object):
     def iterate_columns(self, table_name):
         sql = "SELECT id FROM __tables__ WHERE (name = '" + table_name + "')"
         self.log(sql)
-        table_id = self.conn.execute(sql).next()['id']
+        table_id = next(self.conn.execute(sql))['id']
         sql = "SELECT * FROM __columns__ WHERE (table_id = '" + str(table_id) + "' AND confirmed = 1)"
         self.log(sql)
         result = self.conn.execute(sql).fetchall()
@@ -382,7 +382,7 @@ class Database(object):
     def check_column(self, table_name, column_name):
         sql = "SELECT id FROM __tables__ WHERE (name = '" + table_name + "')"
         self.log(sql)
-        table_id = self.conn.execute(sql).next()['id']
+        table_id = next(self.conn.execute(sql))['id']
         sql = "SELECT * FROM __columns__ WHERE (table_id = '" + str(table_id) + "' AND name = '" + column_name + "' AND confirmed = 1)"
         self.log(sql)
         result = self.conn.execute(sql).fetchall()
@@ -455,19 +455,19 @@ class Database(object):
         valid = True
         if path != "":
             for head in self.InternalPathUtils().iterate_heads(path):
-                if head not in cur_head.keys():
+                if head not in list(cur_head.keys()):
                     # non existing directory
                     valid = False
                 else:
                     cur_head = cur_head[head]
             basename = os.path.basename(path)
-            if basename not in cur_head.keys() or cur_head[basename] == None:
+            if basename not in list(cur_head.keys()) or cur_head[basename] == None:
                 # do not exist or points to the file
                 valid = False
             else:
                 cur_head = cur_head[basename]
         if valid == True:
-            for elem in cur_head.keys():
+            for elem in list(cur_head.keys()):
                 if include_subdirs == True and cur_head[elem] != None:
                     yield elem
                 if include_subfiles == True and cur_head[elem] == None:
@@ -700,4 +700,4 @@ class Database(object):
             pass
             logging.debug("[" + str(self.id) + "] Executing query: " + sql)
             traceback.print_stack()
-        
+        

+ 7 - 5
mpp/internal/loader.py

@@ -9,7 +9,7 @@ import mpp.api
 
 import os
 import sys
-import ConfigParser
+from configparser import ConfigParser
 import re
 import optparse
 
@@ -66,13 +66,13 @@ class Loader(object):
                 return active_plugins
 
             pattern = re.compile(r'.*[.]ini$', flags=re.IGNORECASE)
-            dirList = os.listdir(directory)
+            dirList = sorted(os.listdir(directory))
             for fname in dirList:
                 fname = os.path.join(directory, fname)
                 if os.path.isdir(fname):
                     active_plugins += load_recursively(inicontainer, fname)
                 elif re.match(pattern, fname):
-                    config = ConfigParser.ConfigParser()
+                    config = ConfigParser()
                     config.read(fname)
                     item = {'package': config.get('Plugin', 'package'),
                             'module': config.get('Plugin', 'module'),
@@ -96,7 +96,7 @@ class Loader(object):
             return active_plugins
                         
         def list_dependants_recursively(inicontainer, required_plugin_name):
-            assert required_plugin_name in inicontainer.hash.keys(), \
+            assert required_plugin_name in list(inicontainer.hash.keys()), \
                 "depends section requires unknown plugin: " + required_plugin_name
             item = inicontainer.hash[required_plugin_name]
             if item['depends'] in ('None', 'none', 'False', 'false'):
@@ -119,6 +119,8 @@ class Loader(object):
         required_plugins = []
         for each in ([std_ext_priority_dir, std_ext_dir] + directories):
             required_plugins += load_recursively(inicontainer, each)
+        
+        required_plugins.sort();    # sort the plugin list to get similar results independant of the os
             
         # upgrade the list of required plugins
         required_and_dependant_plugins = []
@@ -132,7 +134,7 @@ class Loader(object):
         # load
         for plugin_name in required_and_dependant_plugins:
             item = inicontainer.hash[plugin_name]
-            plugin = __import__(item['package'], globals(), locals(), [item['module']], -1)
+            plugin = __import__(item['package'], globals(), locals(), [str(item['module'])])
             module_attr = plugin.__getattribute__(item['module'])
             class_attr = module_attr.__getattribute__(item['class'])
             item['instance'] = class_attr.__new__(class_attr)

+ 3 - 3
mpp/internal/py2txt.py

@@ -58,7 +58,7 @@ class Py2TXT():
         attrStr = ""    # attribute string of this level
         childStr = ""   # TXT string of this level's children
 
-        for k, v in pyDictObj.items():
+        for k, v in list(pyDictObj.items()):
 
             if isinstance( v, dict ):
                 # child tags, with attributes
@@ -77,7 +77,7 @@ class Py2TXT():
 
         # create TXT string for attributes
         attrStr += ""
-        for k, v in attributes.items():
+        for k, v in list(attributes.items()):
             attrStr += "\n" + (INDENT_SPACE_SYMBOL * (indent + 1)) + "%s=\"%s\"" % ( k, v )
 
         # let's assemble our tag string
@@ -123,4 +123,4 @@ class Py2TXT():
 
         tagStr += "\n" + (INDENT_SPACE_SYMBOL * indent) + "%(n)s:%(c)s" % { 'n':objName, 'c':childStr }
 
-        return tagStr
+        return tagStr

+ 6 - 3
mpp/internal/py2xml.py

@@ -60,7 +60,7 @@ class Py2XML():
         attrStr = ""    # attribute string of this level
         childStr = ""   # XML string of this level's children
 
-        for k, v in pyDictObj.items():
+        for k, v in list(pyDictObj.items()):
 
             if isinstance( v, dict ):
                 # child tags, with attributes
@@ -79,7 +79,10 @@ class Py2XML():
 
         # create XML string for attributes
         for k, v in sorted(attributes.items()):
-            attrStr += " %s=\"%s\"" % ( k, v )
+            if isinstance(v, float):
+                attrStr += " %s=\"%s\"" % ( k, round(v, 10) )
+            else:
+                attrStr += " %s=\"%s\"" % ( k, v )
 
         # let's assemble our tag string
         if childStr == "":
@@ -126,4 +129,4 @@ class Py2XML():
 
         tagStr += ("\n" + (INDENT_SPACE_SYMBOL * indent) + "<%(n)s>%(c)s" + "\n" + (INDENT_SPACE_SYMBOL * indent) + "</%(n)s>") % { 'n':objName, 'c':childStr }
 
-        return tagStr
+        return tagStr

+ 1 - 1
mpp/log.py

@@ -14,7 +14,7 @@ class Plugin(mpp.api.BasePlugin, mpp.api.IConfigurable):
     def declare_configuration(self, parser, default_value='INFO'):
         allowed_values = ['DEBUG','INFO','WARNING','ERROR']
         default_value_cur = default_value
-        if os.environ.has_key('METRIXPLUSPLUS_LOG_LEVEL') and os.environ['METRIXPLUSPLUS_LOG_LEVEL'] in allowed_values:
+        if '__import__' in os.environ and os.environ['METRIXPLUSPLUS_LOG_LEVEL'] in allowed_values:
             default_value_cur = os.environ['METRIXPLUSPLUS_LOG_LEVEL']
         parser.add_option("--log-level", "--ll", default=default_value_cur, choices=allowed_values,
                          help="Defines log level. Possible values are 'DEBUG','INFO','WARNING' or 'ERROR'. "

+ 2 - 2
mpp/utils.py

@@ -30,7 +30,7 @@ class FileRegionsMatcher(object):
                 self.names[each.get_name()].append((each.get_id(), each.get_checksum())) 
             
         def get_next_id_once_by_checksum(self, checksum):
-            if checksum not in self.checksums.keys():
+            if checksum not in list(self.checksums.keys()):
                 return None
     
             if len(self.checksums[checksum]) == 0:
@@ -44,7 +44,7 @@ class FileRegionsMatcher(object):
             return next_id
     
         def get_next_id_once_by_name(self, name):
-            if name not in self.names.keys():
+            if name not in list(self.names.keys()):
                 return None
             
             if len(self.names[name]) == 0:

+ 14 - 14
tests/common.py

@@ -117,34 +117,34 @@ class ToolRunner(object):
             self.message += "\nGold file does not exist: " + gold_file
             return False
         
-        f = open(gold_file, 'rU');
+        f = open(gold_file, 'r');
         gold_text = f.read();
         f.close()
 
         gold_to_compare = gold_text
-        text_to_compare = text
+        text_to_compare = str(text.decode('ascii'))
         if lines != None:
             gold_to_compare = ""
             text_to_compare = ""
             gold_lines = gold_text.splitlines(True)
-            text_lines = text.splitlines(True)
+            text_lines = str(text.decode('ascii')).splitlines(True)
             for each in lines:
                 gold_to_compare += "".join(gold_lines[each[0] : each[1]])
                 text_to_compare += "".join(text_lines[each[0] : each[1]])
-        
-        gold_to_compare = gold_to_compare.replace('\r', '')
-        text_to_compare = text_to_compare.replace('\r', '')
-            
+
+        gold_to_compare = gold_to_compare.replace('\n', ' ').replace('\r', '').replace(" ", "")
+        text_to_compare = text_to_compare.replace('\n', ' ').replace('\r', '').replace(" ", "")
+
         result = (gold_to_compare == text_to_compare)
         
         if result == False:
-            f = open(real_file, 'wb');
-            f.write(text);
+            f = open(real_file, 'wb')
+            f.write(text)
             f.close()
             
-            diff_text = difflib.HtmlDiff().make_file(gold_to_compare.splitlines(), text_to_compare.splitlines(), "Gold file", "Real output")
-            f = open(diff_file, 'w');
-            f.write(diff_text);
+            diff_text = difflib.HtmlDiff().make_file(gold_text.splitlines(), text.decode('ascii').splitlines(), "Gold file", "Real output")
+            f = open(diff_file, 'w')
+            f.write(diff_text)
             f.close()
         else:
             if os.path.exists(real_file):
@@ -191,12 +191,12 @@ class TestCase(unittest.TestCase):
     
     def __init__(self, methodName='runTest'):
         unittest.TestCase.__init__(self, methodName=methodName)
-        if 'METRIXPLUSPLUS_LOG_LEVEL' not in os.environ.keys():
+        if 'METRIXPLUSPLUS_LOG_LEVEL' not in list(os.environ.keys()):
             # launch of individual unit test
             os.environ['METRIXPLUSPLUS_LOG_LEVEL'] = 'ERROR'
             os.environ['METRIXPLUSPLUS_INSTALL_DIR'] = os.path.dirname(os.path.dirname(__file__))
             os.environ['METRIXPLUSPLUS_TEST_MODE'] = str("True")
-            if 'METRIXPLUSPLUS_TEST_GENERATE_GOLDS' not in os.environ.keys():
+            if 'METRIXPLUSPLUS_TEST_GENERATE_GOLDS' not in list(os.environ.keys()):
                 os.environ['METRIXPLUSPLUS_TEST_GENERATE_GOLDS'] = str("False")
             os.chdir(os.environ['METRIXPLUSPLUS_INSTALL_DIR'])
 

+ 14 - 14
tests/general/test_basic/test_help_--help_default_stdout.gold.txt

@@ -1,14 +1,14 @@
-Usage: python metrix++.py --help
-       python metrix++.py <action> --help
-       python metrix++.py <action> [options] -- [path 1] ... [path N]
-
-Actions: 
-  collect
-  export
-  info
-  limit
-  test
-  view
-
-Options:
-  -h, --help  show this help message and exit
+Usage: python metrix++.py --help
+       python metrix++.py <action> --help
+       python metrix++.py <action> [options] -- [path 1] ... [path N]
+
+Actions: 
+  collect
+  export
+  info
+  limit
+  test
+  view
+
+Options:
+  -h, --help  show this help message and exit

+ 144 - 144
tests/general/test_basic/test_help_collect_default_stdout.gold.txt

@@ -1,144 +1,144 @@
-Usage: python metrix++.py --help
-       python metrix++.py collect --help
-       python metrix++.py collect [options] -- [path 1] ... [path N]
-
-Options:
-  -h, --help            show this help message and exit
-  --db-file=DB_FILE, --dbf=DB_FILE
-                        Path to a database file to create and write [default:
-                        ./metrixpp.db].
-  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
-                        Path to database file with data collected for the
-                        past/previous code revision. If it is set, the tool
-                        will do an incremental/iterative collection. It may
-                        reduce the time of processing significantly [default:
-                        none].
-  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
-                        Defines log level. Possible values are
-                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
-                        inherited from environment variable
-                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
-  --std.code.complexity.cyclomatic, --sccc
-                        Enables collection of cyclomatic complexity metric
-                        (McCabe) [default: False]
-  --std.code.complexity.maxindent, --sccmi
-                        Enables collection of maximum indent level metric
-                        [default: False]
-  --std.code.cpp.files=STD.CODE.CPP.FILES
-                        Enumerates filename extensions to match C/C++ files
-                        [default: *.c,*.h,*.cpp,*.hpp,*.cc,*.hh,*.cxx,*.hxx]
-  --std.code.cs.files=STD.CODE.CS.FILES
-                        Enumerates filename extensions to match C# files
-                        [default: *.cs]
-  --std.code.filelines.code, --scflc
-                        Enables collection of lines of code metric (per file
-                        detalization) - number of non-empty lines of code,
-                        excluding comments [default: False]
-  --std.code.filelines.preprocessor, --scflp
-                        Enables collection of lines of preprocessor code
-                        metric (per file detalization) - number of non-empty
-                        lines of preprocessor code [default: False]
-  --std.code.filelines.comments, --scflcom
-                        Enables collection of lines of comments metric (per
-                        file detalization) - number of non-empty lines of
-                        comments [default: False]
-  --std.code.filelines.total, --scflt
-                        Enables collection of total lines metric (per file
-                        detalization) - number of any type of lines (blank,
-                        code, comments, etc.)[default: False]
-  --std.code.java.files=STD.CODE.JAVA.FILES
-                        Enumerates filename extensions to match Java files
-                        [default: *.java]
-  --std.code.length.total, --sclent
-                        Enables collection of size metric (in number of
-                        symbols per region) [default: False]
-  --std.code.lines.code, --sclc
-                        Enables collection of lines of code metric (per region
-                        detalization) - number of non-empty lines of code,
-                        excluding comments [default: False]
-  --std.code.lines.preprocessor, --sclp
-                        Enables collection of lines of preprocessor code
-                        metric (per region detalization) - number of non-empty
-                        lines of preprocessor code [default: False]
-  --std.code.lines.comments, --sclcom
-                        Enables collection of lines of comments metric (per
-                        region detalization) - number of non-empty lines of
-                        comments [default: False]
-  --std.code.lines.total, --sclt
-                        Enables collection of total lines metric (per region
-                        detalization) - number of any type of lines (blank,
-                        code, comments, etc.)[default: False]
-  --std.code.magic.numbers, --scmn
-                        Enables collection of magic numbers metric [default:
-                        False]
-  --std.code.magic.numbers.simplier, --scmns
-                        Is set, 0, -1 and 1 numbers are not counted in
-                        'std.code.magic.numbers' metric [default: False]
-  --std.code.member.fields, --scmf
-                        Enables collection of number of data members / fields
-                        per classes, structs and interfaces [default: False]
-  --std.code.member.globals, --scmg
-                        Enables collection of number of global variables /
-                        fields per global regions and namespaces [default:
-                        False]
-  --std.code.member.classes, --scmc
-                        Enables collection of number of classes defined per
-                        any region [default: False]
-  --std.code.member.structs, --scms
-                        Enables collection of number of structs defined per
-                        any region [default: False]
-  --std.code.member.interfaces, --scmi
-                        Enables collection of number of interfaces defined per
-                        any region [default: False]
-  --std.code.member.types, --scmt
-                        Enables collection of number of types (classes,
-                        structs or interface) defined per any region [default:
-                        False]
-  --std.code.member.methods, --scmm
-                        Enables collection of number of methods (functions)
-                        defined per any region [default: False]
-  --std.code.member.namespaces, --scmnss
-                        Enables collection of number of namespaces defined
-                        globally and enclosed (sub-namespaces) [default:
-                        False]
-  --std.code.maintindex.simple, --scmis
-                        Enables collection of simple maintainability index
-                        metric. It uses std.code.line:code,
-                        std.code.complexity:cyclomatic metrics to rank level
-                        of maintainability. Lower value of this metric
-                        indicates better maintainability. [default: False]
-  --std.code.todo.comments, --sctc
-                        Enables collection of number of todo/fixme/etc markers
-                        in comments [default: False]
-  --std.code.todo.strings, --scts
-                        Enables collection of number of todo/fixme/etc markers
-                        in strings [default: False]
-  --std.code.todo.tags=STD.CODE.TODO.TAGS, --sctt=STD.CODE.TODO.TAGS
-                        A list of typical todo markers to search, separated by
-                        comma [default: TODO,ToDo,FIXME,FixMe,TBD,HACK,XXX]
-  --std.suppress, --ss  If set (True), suppression markers are collected from
-                        comments in code. Suppressions are used by post-
-                        processing tools, like limit, to remove false-positive
-                        warnings. Suppressions should be in the first comment
-                        block of a region (function/class/interface). Format
-                        of suppressions: 'metrix++: suppress metric-name'. For
-                        example: 'metrix++: suppress
-                        std.code.complexity:cyclomatic'.  [default: False]
-  --std.general.proctime, --sgpt
-                        If the option is set (True), the tool measures
-                        processing time per file [default: False]
-  --std.general.procerrors, --sgpe
-                        If the option is set (True), the tool counts number of
-                        processing/parsing errors per file [default: False]
-  --std.general.size, --sgs
-                        If the option is set (True), the tool collects file
-                        size metric (in bytes) [default: False]
-  --include-files=INCLUDE_FILES, --if=INCLUDE_FILES
-                        Defines the regular expression pattern to include
-                        files in processing [default: .*]
-  --exclude-files=EXCLUDE_FILES, --ef=EXCLUDE_FILES
-                        Defines the regular expression pattern to exclude
-                        files from processing [default: ^[.]]
-  --non-recursively, --nr
-                        If the option is set (True), sub-directories are not
-                        processed [default: False]
+Usage: python metrix++.py --help
+       python metrix++.py collect --help
+       python metrix++.py collect [options] -- [path 1] ... [path N]
+
+Options:
+  -h, --help            show this help message and exit
+  --db-file=DB_FILE, --dbf=DB_FILE
+                        Path to a database file to create and write [default:
+                        ./metrixpp.db].
+  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
+                        Path to database file with data collected for the
+                        past/previous code revision. If it is set, the tool
+                        will do an incremental/iterative collection. It may
+                        reduce the time of processing significantly [default:
+                        none].
+  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
+                        Defines log level. Possible values are
+                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
+                        inherited from environment variable
+                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
+  --std.code.complexity.cyclomatic, --sccc
+                        Enables collection of cyclomatic complexity metric
+                        (McCabe) [default: False]
+  --std.code.complexity.maxindent, --sccmi
+                        Enables collection of maximum indent level metric
+                        [default: False]
+  --std.code.cpp.files=STD.CODE.CPP.FILES
+                        Enumerates filename extensions to match C/C++ files
+                        [default: *.c,*.h,*.cpp,*.hpp,*.cc,*.hh,*.cxx,*.hxx]
+  --std.code.cs.files=STD.CODE.CS.FILES
+                        Enumerates filename extensions to match C# files
+                        [default: *.cs]
+  --std.code.filelines.code, --scflc
+                        Enables collection of lines of code metric (per file
+                        detalization) - number of non-empty lines of code,
+                        excluding comments [default: False]
+  --std.code.filelines.preprocessor, --scflp
+                        Enables collection of lines of preprocessor code
+                        metric (per file detalization) - number of non-empty
+                        lines of preprocessor code [default: False]
+  --std.code.filelines.comments, --scflcom
+                        Enables collection of lines of comments metric (per
+                        file detalization) - number of non-empty lines of
+                        comments [default: False]
+  --std.code.filelines.total, --scflt
+                        Enables collection of total lines metric (per file
+                        detalization) - number of any type of lines (blank,
+                        code, comments, etc.)[default: False]
+  --std.code.java.files=STD.CODE.JAVA.FILES
+                        Enumerates filename extensions to match Java files
+                        [default: *.java]
+  --std.code.length.total, --sclent
+                        Enables collection of size metric (in number of
+                        symbols per region) [default: False]
+  --std.code.lines.code, --sclc
+                        Enables collection of lines of code metric (per region
+                        detalization) - number of non-empty lines of code,
+                        excluding comments [default: False]
+  --std.code.lines.preprocessor, --sclp
+                        Enables collection of lines of preprocessor code
+                        metric (per region detalization) - number of non-empty
+                        lines of preprocessor code [default: False]
+  --std.code.lines.comments, --sclcom
+                        Enables collection of lines of comments metric (per
+                        region detalization) - number of non-empty lines of
+                        comments [default: False]
+  --std.code.lines.total, --sclt
+                        Enables collection of total lines metric (per region
+                        detalization) - number of any type of lines (blank,
+                        code, comments, etc.)[default: False]
+  --std.code.magic.numbers, --scmn
+                        Enables collection of magic numbers metric [default:
+                        False]
+  --std.code.magic.numbers.simplier, --scmns
+                        Is set, 0, -1 and 1 numbers are not counted in
+                        'std.code.magic.numbers' metric [default: False]
+  --std.code.member.fields, --scmf
+                        Enables collection of number of data members / fields
+                        per classes, structs and interfaces [default: False]
+  --std.code.member.globals, --scmg
+                        Enables collection of number of global variables /
+                        fields per global regions and namespaces [default:
+                        False]
+  --std.code.member.classes, --scmc
+                        Enables collection of number of classes defined per
+                        any region [default: False]
+  --std.code.member.structs, --scms
+                        Enables collection of number of structs defined per
+                        any region [default: False]
+  --std.code.member.interfaces, --scmi
+                        Enables collection of number of interfaces defined per
+                        any region [default: False]
+  --std.code.member.types, --scmt
+                        Enables collection of number of types (classes,
+                        structs or interface) defined per any region [default:
+                        False]
+  --std.code.member.methods, --scmm
+                        Enables collection of number of methods (functions)
+                        defined per any region [default: False]
+  --std.code.member.namespaces, --scmnss
+                        Enables collection of number of namespaces defined
+                        globally and enclosed (sub-namespaces) [default:
+                        False]
+  --std.code.maintindex.simple, --scmis
+                        Enables collection of simple maintainability index
+                        metric. It uses std.code.line:code,
+                        std.code.complexity:cyclomatic metrics to rank level
+                        of maintainability. Lower value of this metric
+                        indicates better maintainability. [default: False]
+  --std.code.todo.comments, --sctc
+                        Enables collection of number of todo/fixme/etc markers
+                        in comments [default: False]
+  --std.code.todo.strings, --scts
+                        Enables collection of number of todo/fixme/etc markers
+                        in strings [default: False]
+  --std.code.todo.tags=STD.CODE.TODO.TAGS, --sctt=STD.CODE.TODO.TAGS
+                        A list of typical todo markers to search, separated by
+                        comma [default: TODO,ToDo,FIXME,FixMe,TBD,HACK,XXX]
+  --std.suppress, --ss  If set (True), suppression markers are collected from
+                        comments in code. Suppressions are used by post-
+                        processing tools, like limit, to remove false-positive
+                        warnings. Suppressions should be in the first comment
+                        block of a region (function/class/interface). Format
+                        of suppressions: 'metrix++: suppress metric-name'. For
+                        example: 'metrix++: suppress
+                        std.code.complexity:cyclomatic'.  [default: False]
+  --std.general.proctime, --sgpt
+                        If the option is set (True), the tool measures
+                        processing time per file [default: False]
+  --std.general.procerrors, --sgpe
+                        If the option is set (True), the tool counts number of
+                        processing/parsing errors per file [default: False]
+  --std.general.size, --sgs
+                        If the option is set (True), the tool collects file
+                        size metric (in bytes) [default: False]
+  --include-files=INCLUDE_FILES, --if=INCLUDE_FILES
+                        Defines the regular expression pattern to include
+                        files in processing [default: .*]
+  --exclude-files=EXCLUDE_FILES, --ef=EXCLUDE_FILES
+                        Defines the regular expression pattern to exclude
+                        files from processing [default: ^[.]]
+  --non-recursively, --nr
+                        If the option is set (True), sub-directories are not
+                        processed [default: False]

+ 18 - 18
tests/general/test_basic/test_help_export_default_stdout.gold.txt

@@ -1,18 +1,18 @@
-Usage: python metrix++.py --help
-       python metrix++.py export --help
-       python metrix++.py export [options] -- [path 1] ... [path N]
-
-Options:
-  -h, --help            show this help message and exit
-  --db-file=DB_FILE, --dbf=DB_FILE
-                        Path to a database file to read and process [default:
-                        ./metrixpp.db].
-  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
-                        Path to database file with data collected for the
-                        past/previous code revision. It is used to identify
-                        and evaluate/analyze change trends. [default: none].
-  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
-                        Defines log level. Possible values are
-                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
-                        inherited from environment variable
-                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
+Usage: python metrix++.py --help
+       python metrix++.py export --help
+       python metrix++.py export [options] -- [path 1] ... [path N]
+
+Options:
+  -h, --help            show this help message and exit
+  --db-file=DB_FILE, --dbf=DB_FILE
+                        Path to a database file to read and process [default:
+                        ./metrixpp.db].
+  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
+                        Path to database file with data collected for the
+                        past/previous code revision. It is used to identify
+                        and evaluate/analyze change trends. [default: none].
+  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
+                        Defines log level. Possible values are
+                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
+                        inherited from environment variable
+                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]

+ 18 - 18
tests/general/test_basic/test_help_info_default_stdout.gold.txt

@@ -1,18 +1,18 @@
-Usage: python metrix++.py --help
-       python metrix++.py info --help
-       python metrix++.py info [options] -- [path 1] ... [path N]
-
-Options:
-  -h, --help            show this help message and exit
-  --db-file=DB_FILE, --dbf=DB_FILE
-                        Path to a database file to read and process [default:
-                        ./metrixpp.db].
-  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
-                        Path to database file with data collected for the
-                        past/previous code revision. It is used to identify
-                        and evaluate/analyze change trends. [default: none].
-  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
-                        Defines log level. Possible values are
-                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
-                        inherited from environment variable
-                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
+Usage: python metrix++.py --help
+       python metrix++.py info --help
+       python metrix++.py info [options] -- [path 1] ... [path N]
+
+Options:
+  -h, --help            show this help message and exit
+  --db-file=DB_FILE, --dbf=DB_FILE
+                        Path to a database file to read and process [default:
+                        ./metrixpp.db].
+  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
+                        Path to database file with data collected for the
+                        past/previous code revision. It is used to identify
+                        and evaluate/analyze change trends. [default: none].
+  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
+                        Defines log level. Possible values are
+                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
+                        inherited from environment variable
+                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]

+ 56 - 54
tests/general/test_basic/test_help_limit_default_stdout.gold.txt

@@ -1,54 +1,56 @@
-Usage: python metrix++.py --help
-       python metrix++.py limit --help
-       python metrix++.py limit [options] -- [path 1] ... [path N]
-
-Options:
-  -h, --help            show this help message and exit
-  --db-file=DB_FILE, --dbf=DB_FILE
-                        Path to a database file to read and process [default:
-                        ./metrixpp.db].
-  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
-                        Path to database file with data collected for the
-                        past/previous code revision. It is used to identify
-                        and evaluate/analyze change trends. [default: none].
-  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
-                        Defines log level. Possible values are
-                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
-                        inherited from environment variable
-                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
-  --hotspots=HOTSPOTS, --hs=HOTSPOTS
-                        If not set (none), all exceeded limits are printed. If
-                        set, exceeded limits are sorted (the worst is the
-                        first) and only first HOTSPOTS limits are printed.
-                        [default: none]
-  --disable-suppressions, --ds
-                        If not set (none), all suppressions are ignored and
-                        associated warnings are printed. [default: False]
-  --warn-mode=WARN_MODE, --wm=WARN_MODE
-                        Defines the warnings mode. 'all' - all warnings
-                        active, 'new' - warnings for new regions/files only,
-                        'trend' - warnings for new regions/files and for bad
-                        trend of modified regions/files, 'touched' - warnings
-                        for new and modified regions/files [default: all]
-  --min-limit=MIN_LIMIT, --min=MIN_LIMIT
-                        A threshold per 'namespace:field' metric in order to
-                        select regions, which have got metric value less than
-                        the specified limit. This option can be specified
-                        multiple times, if it is necessary to apply several
-                        limits. Should be in the format: <namespace>:<field
-                        >:<limit-value>[:region_type[,region_type]], for
-                        example: 'std.code.lines:comments:1', or
-                        'std.code.lines:comments:1:function,class'. Region
-                        types is optional specifier, and if not defined the
-                        limit is applied to regions of all types.
-  --max-limit=MAX_LIMIT, --max=MAX_LIMIT
-                        A threshold per 'namespace:field' metric in order to
-                        select regions, which have got metric value more than
-                        the specified limit. This option can be specified
-                        multiple times, if it is necessary to apply several
-                        limits. Should be in the format: <namespace>:<field
-                        >:<limit-value>[:region_type[,region_type]], for
-                        example: 'std.code.complexity:cyclomatic:7', or
-                        'std.code.complexity:maxdepth:5:function'. Region
-                        types is optional specifier, and if not defined the
-                        limit is applied to regions of all types.
+Usage: python metrix++.py --help
+       python metrix++.py limit --help
+       python metrix++.py limit [options] -- [path 1] ... [path N]
+
+Options:
+  -h, --help            show this help message and exit
+  --db-file=DB_FILE, --dbf=DB_FILE
+                        Path to a database file to read and process [default:
+                        ./metrixpp.db].
+  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
+                        Path to database file with data collected for the
+                        past/previous code revision. It is used to identify
+                        and evaluate/analyze change trends. [default: none].
+  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
+                        Defines log level. Possible values are
+                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
+                        inherited from environment variable
+                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
+  --hotspots=HOTSPOTS, --hs=HOTSPOTS
+                        If not set (none), all exceeded limits are printed. If
+                        set, exceeded limits are sorted (the worst is the
+                        first) and only first HOTSPOTS limits are printed.
+                        [default: none]
+  --disable-suppressions, --ds
+                        If not set (none), all suppressions are ignored and
+                        associated warnings are printed. [default: False]
+  --warn-mode=WARN_MODE, --wm=WARN_MODE
+                        Defines the warnings mode. 'all' - all warnings
+                        active, 'new' - warnings for new regions/files only,
+                        'trend' - warnings for new regions/files and for bad
+                        trend of modified regions/files, 'touched' - warnings
+                        for new and modified regions/files [default: all]
+  --min-limit=MIN_LIMIT, --min=MIN_LIMIT
+                        A threshold per 'namespace:field' metric in order to
+                        select regions, which have got metric value less than
+                        the specified limit. This option can be specified
+                        multiple times, if it is necessary to apply several
+                        limits. Should be in the format:
+                        <namespace>:<field>:<limit-
+                        value>[:region_type[,region_type]], for example:
+                        'std.code.lines:comments:1', or
+                        'std.code.lines:comments:1:function,class'. Region
+                        types is optional specifier, and if not defined the
+                        limit is applied to regions of all types.
+  --max-limit=MAX_LIMIT, --max=MAX_LIMIT
+                        A threshold per 'namespace:field' metric in order to
+                        select regions, which have got metric value more than
+                        the specified limit. This option can be specified
+                        multiple times, if it is necessary to apply several
+                        limits. Should be in the format:
+                        <namespace>:<field>:<limit-
+                        value>[:region_type[,region_type]], for example:
+                        'std.code.complexity:cyclomatic:7', or
+                        'std.code.complexity:maxdepth:5:function'. Region
+                        types is optional specifier, and if not defined the
+                        limit is applied to regions of all types.

+ 36 - 36
tests/general/test_basic/test_help_view_default_stdout.gold.txt

@@ -1,36 +1,36 @@
-Usage: python metrix++.py --help
-       python metrix++.py view --help
-       python metrix++.py view [options] -- [path 1] ... [path N]
-
-Options:
-  -h, --help            show this help message and exit
-  --db-file=DB_FILE, --dbf=DB_FILE
-                        Path to a database file to read and process [default:
-                        ./metrixpp.db].
-  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
-                        Path to database file with data collected for the
-                        past/previous code revision. It is used to identify
-                        and evaluate/analyze change trends. [default: none].
-  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
-                        Defines log level. Possible values are
-                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
-                        inherited from environment variable
-                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
-  --format=FORMAT, --ft=FORMAT
-                        Format of the output data. Possible values are 'xml',
-                        'txt' or 'python' [default: txt]
-  --nest-regions, --nr  If the option is set (True), data for regions is
-                        exported in the form of a tree. Otherwise, all regions
-                        are exported in plain list. [default: False]
-  --max-distribution-rows=MAX_DISTRIBUTION_ROWS, --mdr=MAX_DISTRIBUTION_ROWS
-                        Maximum number of rows in distribution tables. If it
-                        is set to 0, the tool does not optimize the size of
-                        distribution tables [default: 20]
-  --scope-mode=SCOPE_MODE, --sm=SCOPE_MODE
-                        Defines the analysis scope mode. 'all' - all available
-                        regions and files are taken into account, 'new' - only
-                        new regions and files are taken into account,
-                        'touched' - only new and modified regions and files
-                        are taken into account. Modes 'new' and 'touched' may
-                        require more time for processing than mode 'all'
-                        [default: all]
+Usage: python metrix++.py --help
+       python metrix++.py view --help
+       python metrix++.py view [options] -- [path 1] ... [path N]
+
+Options:
+  -h, --help            show this help message and exit
+  --db-file=DB_FILE, --dbf=DB_FILE
+                        Path to a database file to read and process [default:
+                        ./metrixpp.db].
+  --db-file-prev=DB_FILE_PREV, --dbfp=DB_FILE_PREV
+                        Path to database file with data collected for the
+                        past/previous code revision. It is used to identify
+                        and evaluate/analyze change trends. [default: none].
+  --log-level=LOG_LEVEL, --ll=LOG_LEVEL
+                        Defines log level. Possible values are
+                        'DEBUG','INFO','WARNING' or 'ERROR'. Default value is
+                        inherited from environment variable
+                        'METRIXPLUSPLUS_LOG_LEVEL' if set. [default: INFO]
+  --format=FORMAT, --ft=FORMAT
+                        Format of the output data. Possible values are 'xml',
+                        'txt' or 'python' [default: txt]
+  --nest-regions, --nr  If the option is set (True), data for regions is
+                        exported in the form of a tree. Otherwise, all regions
+                        are exported in plain list. [default: False]
+  --max-distribution-rows=MAX_DISTRIBUTION_ROWS, --mdr=MAX_DISTRIBUTION_ROWS
+                        Maximum number of rows in distribution tables. If it
+                        is set to 0, the tool does not optimize the size of
+                        distribution tables [default: 20]
+  --scope-mode=SCOPE_MODE, --sm=SCOPE_MODE
+                        Defines the analysis scope mode. 'all' - all available
+                        regions and files are taken into account, 'new' - only
+                        new regions and files are taken into account,
+                        'touched' - only new and modified regions and files
+                        are taken into account. Modes 'new' and 'touched' may
+                        require more time for processing than mode 'all'
+                        [default: all]

+ 16 - 16
tests/general/test_basic/test_std_code_magic_view_default_stdout.gold.txt

@@ -1,16 +1,16 @@
-./:: info: Overall metrics for 'std.code.magic:numbers' metric
-	Average        : 1.55555555556 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 4
-	Total          : 14.0
-	Distribution   : 9 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 0.667 : 0.667 : 6	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.222 : 0.889 : 2	||||||||||||||||||||||
-	             4 : 0.111 : 1.000 : 1	|||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.magic:numbers' metric
+	Average        : 1.5555555556 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 4
+	Total          : 14.0
+	Distribution   : 9 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 0.667 : 0.667 : 6	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.222 : 0.889 : 2	||||||||||||||||||||||
+	             4 : 0.111 : 1.000 : 1	|||||||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 96 - 96
tests/general/test_basic/test_std_code_magic_view_nest_per_file_stdout.gold.txt

@@ -1,96 +1,96 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-697
-	Line numbers   : 1-71
-	Modified       : None
-
-.   ./simple.cpp:4: info: Metrics per 'hmm' region
-    	Region name    : hmm
-    	Region type    : namespace
-    	Offsets        : 2-696
-    	Line numbers   : 3-70
-    	Modified       : None
-
-.   .   ./simple.cpp:9: info: Metrics per 'A' region
-        	Region name    : A
-        	Region type    : class
-        	Offsets        : 94-692
-        	Line numbers   : 9-68
-        	Modified       : None
-        	std.code.magic:numbers: 1
-
-.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
-            	Region name    : A
-            	Region type    : function
-            	Offsets        : 106-252
-            	Line numbers   : 12-23
-            	Modified       : None
-            	std.code.magic:numbers: 4
-
-.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
-            	Region name    : func
-            	Region type    : function
-            	Offsets        : 256-405
-            	Line numbers   : 26-40
-            	Modified       : None
-            	std.code.magic:numbers: 1
-
-.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 285-391
-                	Line numbers   : 28-38
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 306-387
-                    	Line numbers   : 30-37
-                    	Modified       : None
-                    	std.code.magic:numbers: 1
-
-.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
-            	Region name    : func_to_be_removed_in_new_sources
-            	Region type    : function
-            	Offsets        : 408-596
-            	Line numbers   : 42-56
-            	Modified       : None
-            	std.code.magic:numbers: 1
-
-.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 466-577
-                	Line numbers   : 44-54
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 487-573
-                    	Line numbers   : 46-53
-                    	Modified       : None
-                    	std.code.magic:numbers: 1
-
-.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
-            	Region name    : never
-            	Region type    : function
-            	Offsets        : 599-669
-            	Line numbers   : 58-65
-            	Modified       : None
-            	std.code.magic:numbers: 2
-
-./simple.cpp:: info: Overall metrics for 'std.code.magic:numbers' metric
-	Average        : 1.57142857143 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 4
-	Total          : 11.0
-	Distribution   : 7 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 0.714 : 0.714 : 5	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.143 : 0.857 : 1	||||||||||||||
-	             4 : 0.143 : 1.000 : 1	||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-697
+	Line numbers   : 1-71
+	Modified       : None
+
+.   ./simple.cpp:4: info: Metrics per 'hmm' region
+    	Region name    : hmm
+    	Region type    : namespace
+    	Offsets        : 2-696
+    	Line numbers   : 3-70
+    	Modified       : None
+
+.   .   ./simple.cpp:9: info: Metrics per 'A' region
+        	Region name    : A
+        	Region type    : class
+        	Offsets        : 94-692
+        	Line numbers   : 9-68
+        	Modified       : None
+        	std.code.magic:numbers: 1
+
+.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
+            	Region name    : A
+            	Region type    : function
+            	Offsets        : 106-252
+            	Line numbers   : 12-23
+            	Modified       : None
+            	std.code.magic:numbers: 4
+
+.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
+            	Region name    : func
+            	Region type    : function
+            	Offsets        : 256-405
+            	Line numbers   : 26-40
+            	Modified       : None
+            	std.code.magic:numbers: 1
+
+.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 285-391
+                	Line numbers   : 28-38
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 306-387
+                    	Line numbers   : 30-37
+                    	Modified       : None
+                    	std.code.magic:numbers: 1
+
+.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
+            	Region name    : func_to_be_removed_in_new_sources
+            	Region type    : function
+            	Offsets        : 408-596
+            	Line numbers   : 42-56
+            	Modified       : None
+            	std.code.magic:numbers: 1
+
+.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 466-577
+                	Line numbers   : 44-54
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 487-573
+                    	Line numbers   : 46-53
+                    	Modified       : None
+                    	std.code.magic:numbers: 1
+
+.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
+            	Region name    : never
+            	Region type    : function
+            	Offsets        : 599-669
+            	Line numbers   : 58-65
+            	Modified       : None
+            	std.code.magic:numbers: 2
+
+./simple.cpp:: info: Overall metrics for 'std.code.magic:numbers' metric
+	Average        : 1.5714285714 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 4
+	Total          : 11.0
+	Distribution   : 7 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 0.714 : 0.714 : 5	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.143 : 0.857 : 1	||||||||||||||
+	             4 : 0.143 : 1.000 : 1	||||||||||||||
+
+

+ 94 - 94
tests/general/test_basic/test_std_code_magic_view_nozeros_nest_per_file_stdout.gold.txt

@@ -1,94 +1,94 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-697
-	Line numbers   : 1-71
-	Modified       : None
-
-.   ./simple.cpp:4: info: Metrics per 'hmm' region
-    	Region name    : hmm
-    	Region type    : namespace
-    	Offsets        : 2-696
-    	Line numbers   : 3-70
-    	Modified       : None
-
-.   .   ./simple.cpp:9: info: Metrics per 'A' region
-        	Region name    : A
-        	Region type    : class
-        	Offsets        : 94-692
-        	Line numbers   : 9-68
-        	Modified       : None
-        	std.code.magic:numbers: 1
-
-.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
-            	Region name    : A
-            	Region type    : function
-            	Offsets        : 106-252
-            	Line numbers   : 12-23
-            	Modified       : None
-            	std.code.magic:numbers: 1
-
-.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
-            	Region name    : func
-            	Region type    : function
-            	Offsets        : 256-405
-            	Line numbers   : 26-40
-            	Modified       : None
-            	std.code.magic:numbers: 1
-
-.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 285-391
-                	Line numbers   : 28-38
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 306-387
-                    	Line numbers   : 30-37
-                    	Modified       : None
-                    	std.code.magic:numbers: 1
-
-.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
-            	Region name    : func_to_be_removed_in_new_sources
-            	Region type    : function
-            	Offsets        : 408-596
-            	Line numbers   : 42-56
-            	Modified       : None
-            	std.code.magic:numbers: 1
-
-.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 466-577
-                	Line numbers   : 44-54
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 487-573
-                    	Line numbers   : 46-53
-                    	Modified       : None
-                    	std.code.magic:numbers: 1
-
-.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
-            	Region name    : never
-            	Region type    : function
-            	Offsets        : 599-669
-            	Line numbers   : 58-65
-            	Modified       : None
-            	std.code.magic:numbers: 1
-
-./simple.cpp:: info: Overall metrics for 'std.code.magic:numbers' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 7.0
-	Distribution   : 7 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 7	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-697
+	Line numbers   : 1-71
+	Modified       : None
+
+.   ./simple.cpp:4: info: Metrics per 'hmm' region
+    	Region name    : hmm
+    	Region type    : namespace
+    	Offsets        : 2-696
+    	Line numbers   : 3-70
+    	Modified       : None
+
+.   .   ./simple.cpp:9: info: Metrics per 'A' region
+        	Region name    : A
+        	Region type    : class
+        	Offsets        : 94-692
+        	Line numbers   : 9-68
+        	Modified       : None
+        	std.code.magic:numbers: 1
+
+.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
+            	Region name    : A
+            	Region type    : function
+            	Offsets        : 106-252
+            	Line numbers   : 12-23
+            	Modified       : None
+            	std.code.magic:numbers: 1
+
+.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
+            	Region name    : func
+            	Region type    : function
+            	Offsets        : 256-405
+            	Line numbers   : 26-40
+            	Modified       : None
+            	std.code.magic:numbers: 1
+
+.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 285-391
+                	Line numbers   : 28-38
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 306-387
+                    	Line numbers   : 30-37
+                    	Modified       : None
+                    	std.code.magic:numbers: 1
+
+.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
+            	Region name    : func_to_be_removed_in_new_sources
+            	Region type    : function
+            	Offsets        : 408-596
+            	Line numbers   : 42-56
+            	Modified       : None
+            	std.code.magic:numbers: 1
+
+.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 466-577
+                	Line numbers   : 44-54
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 487-573
+                    	Line numbers   : 46-53
+                    	Modified       : None
+                    	std.code.magic:numbers: 1
+
+.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
+            	Region name    : never
+            	Region type    : function
+            	Offsets        : 599-669
+            	Line numbers   : 58-65
+            	Modified       : None
+            	std.code.magic:numbers: 1
+
+./simple.cpp:: info: Overall metrics for 'std.code.magic:numbers' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 7.0
+	Distribution   : 7 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 7	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+

+ 14 - 14
tests/general/test_basic/test_std_code_magic_view_nozeros_stdout.gold.txt

@@ -1,14 +1,14 @@
-./:: info: Overall metrics for 'std.code.magic:numbers' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 9.0
-	Distribution   : 9 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 9	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.magic:numbers' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 9.0
+	Distribution   : 9 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 9	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 16 - 16
tests/general/test_basic/test_std_complexity_maxindent_view_default_stdout.gold.txt

@@ -1,16 +1,16 @@
-./:: info: Overall metrics for 'std.code.complexity:maxindent' metric
-	Average        : 1.875
-	Minimum        : 1
-	Maximum        : 3
-	Total          : 15.0
-	Distribution   : 8 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 0.250 : 0.250 : 2	|||||||||||||||||||||||||
-	             2 : 0.625 : 0.875 : 5	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             3 : 0.125 : 1.000 : 1	|||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.complexity:maxindent' metric
+	Average        : 1.875
+	Minimum        : 1
+	Maximum        : 3
+	Total          : 15.0
+	Distribution   : 8 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 0.250 : 0.250 : 2	|||||||||||||||||||||||||
+	             2 : 0.625 : 0.875 : 5	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             3 : 0.125 : 1.000 : 1	||||||||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 95 - 95
tests/general/test_basic/test_std_complexity_maxindent_view_nest_per_file_stdout.gold.txt

@@ -1,95 +1,95 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-697
-	Line numbers   : 1-71
-	Modified       : None
-
-.   ./simple.cpp:4: info: Metrics per 'hmm' region
-    	Region name    : hmm
-    	Region type    : namespace
-    	Offsets        : 2-696
-    	Line numbers   : 3-70
-    	Modified       : None
-
-.   .   ./simple.cpp:9: info: Metrics per 'A' region
-        	Region name    : A
-        	Region type    : class
-        	Offsets        : 94-692
-        	Line numbers   : 9-68
-        	Modified       : None
-
-.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
-            	Region name    : A
-            	Region type    : function
-            	Offsets        : 106-252
-            	Line numbers   : 12-23
-            	Modified       : None
-            	std.code.complexity:maxindent: 3
-
-.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
-            	Region name    : func
-            	Region type    : function
-            	Offsets        : 256-405
-            	Line numbers   : 26-40
-            	Modified       : None
-            	std.code.complexity:maxindent: 1
-
-.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 285-391
-                	Line numbers   : 28-38
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 306-387
-                    	Line numbers   : 30-37
-                    	Modified       : None
-                    	std.code.complexity:maxindent: 2
-
-.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
-            	Region name    : func_to_be_removed_in_new_sources
-            	Region type    : function
-            	Offsets        : 408-596
-            	Line numbers   : 42-56
-            	Modified       : None
-            	std.code.complexity:maxindent: 1
-
-.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 466-577
-                	Line numbers   : 44-54
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 487-573
-                    	Line numbers   : 46-53
-                    	Modified       : None
-                    	std.code.complexity:maxindent: 2
-
-.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
-            	Region name    : never
-            	Region type    : function
-            	Offsets        : 599-669
-            	Line numbers   : 58-65
-            	Modified       : None
-            	std.code.complexity:maxindent: 2
-
-./simple.cpp:: info: Overall metrics for 'std.code.complexity:maxindent' metric
-	Average        : 1.83333333333
-	Minimum        : 1
-	Maximum        : 3
-	Total          : 11.0
-	Distribution   : 6 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 0.333 : 0.333 : 2	|||||||||||||||||||||||||||||||||
-	             2 : 0.500 : 0.833 : 3	||||||||||||||||||||||||||||||||||||||||||||||||||
-	             3 : 0.167 : 1.000 : 1	|||||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-697
+	Line numbers   : 1-71
+	Modified       : None
+
+.   ./simple.cpp:4: info: Metrics per 'hmm' region
+    	Region name    : hmm
+    	Region type    : namespace
+    	Offsets        : 2-696
+    	Line numbers   : 3-70
+    	Modified       : None
+
+.   .   ./simple.cpp:9: info: Metrics per 'A' region
+        	Region name    : A
+        	Region type    : class
+        	Offsets        : 94-692
+        	Line numbers   : 9-68
+        	Modified       : None
+
+.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
+            	Region name    : A
+            	Region type    : function
+            	Offsets        : 106-252
+            	Line numbers   : 12-23
+            	Modified       : None
+            	std.code.complexity:maxindent: 3
+
+.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
+            	Region name    : func
+            	Region type    : function
+            	Offsets        : 256-405
+            	Line numbers   : 26-40
+            	Modified       : None
+            	std.code.complexity:maxindent: 1
+
+.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 285-391
+                	Line numbers   : 28-38
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 306-387
+                    	Line numbers   : 30-37
+                    	Modified       : None
+                    	std.code.complexity:maxindent: 2
+
+.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
+            	Region name    : func_to_be_removed_in_new_sources
+            	Region type    : function
+            	Offsets        : 408-596
+            	Line numbers   : 42-56
+            	Modified       : None
+            	std.code.complexity:maxindent: 1
+
+.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 466-577
+                	Line numbers   : 44-54
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 487-573
+                    	Line numbers   : 46-53
+                    	Modified       : None
+                    	std.code.complexity:maxindent: 2
+
+.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
+            	Region name    : never
+            	Region type    : function
+            	Offsets        : 599-669
+            	Line numbers   : 58-65
+            	Modified       : None
+            	std.code.complexity:maxindent: 2
+
+./simple.cpp:: info: Overall metrics for 'std.code.complexity:maxindent' metric
+	Average        : 1.8333333333
+	Minimum        : 1
+	Maximum        : 3
+	Total          : 11.0
+	Distribution   : 6 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 0.333 : 0.333 : 2	|||||||||||||||||||||||||||||||||
+	             2 : 0.500 : 0.833 : 3	||||||||||||||||||||||||||||||||||||||||||||||||||
+	             3 : 0.167 : 1.000 : 1	|||||||||||||||||
+
+

+ 120 - 120
tests/general/test_basic/test_std_filelines_metrics_view_nest_per_file_stdout.gold.txt

@@ -1,120 +1,120 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-697
-	Line numbers   : 1-71
-	Modified       : None
-
-.   ./simple.cpp:4: info: Metrics per 'hmm' region
-    	Region name    : hmm
-    	Region type    : namespace
-    	Offsets        : 2-696
-    	Line numbers   : 3-70
-    	Modified       : None
-
-.   .   ./simple.cpp:9: info: Metrics per 'A' region
-        	Region name    : A
-        	Region type    : class
-        	Offsets        : 94-692
-        	Line numbers   : 9-68
-        	Modified       : None
-
-.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
-            	Region name    : A
-            	Region type    : function
-            	Offsets        : 106-252
-            	Line numbers   : 12-23
-            	Modified       : None
-
-.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
-            	Region name    : func
-            	Region type    : function
-            	Offsets        : 256-405
-            	Line numbers   : 26-40
-            	Modified       : None
-
-.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 285-391
-                	Line numbers   : 28-38
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 306-387
-                    	Line numbers   : 30-37
-                    	Modified       : None
-
-.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
-            	Region name    : func_to_be_removed_in_new_sources
-            	Region type    : function
-            	Offsets        : 408-596
-            	Line numbers   : 42-56
-            	Modified       : None
-
-.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 466-577
-                	Line numbers   : 44-54
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 487-573
-                    	Line numbers   : 46-53
-                    	Modified       : None
-
-.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
-            	Region name    : never
-            	Region type    : function
-            	Offsets        : 599-669
-            	Line numbers   : 58-65
-            	Modified       : None
-
-./simple.cpp:0: info: Metrics per file
-	std.code.filelines:code: 53
-	std.code.filelines:total: 58
-	std.code.filelines:preprocessor: 1
-	std.code.filelines:comments: 5
-
-./simple.cpp:: info: Overall metrics for 'std.code.filelines:total' metric
-	Average        : 58.0
-	Minimum        : 58
-	Maximum        : 58
-	Total          : 58.0
-	Distribution   : 1 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	            58 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.filelines:code' metric
-	Average        : 53.0
-	Minimum        : 53
-	Maximum        : 53
-	Total          : 53.0
-	Distribution   : 1 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	            53 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.filelines:preprocessor' metric
-	Average        : 1.0
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 1.0
-	Distribution   : 1 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	             1 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.filelines:comments' metric
-	Average        : 5.0
-	Minimum        : 5
-	Maximum        : 5
-	Total          : 5.0
-	Distribution   : 1 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	             5 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-697
+	Line numbers   : 1-71
+	Modified       : None
+
+.   ./simple.cpp:4: info: Metrics per 'hmm' region
+    	Region name    : hmm
+    	Region type    : namespace
+    	Offsets        : 2-696
+    	Line numbers   : 3-70
+    	Modified       : None
+
+.   .   ./simple.cpp:9: info: Metrics per 'A' region
+        	Region name    : A
+        	Region type    : class
+        	Offsets        : 94-692
+        	Line numbers   : 9-68
+        	Modified       : None
+
+.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
+            	Region name    : A
+            	Region type    : function
+            	Offsets        : 106-252
+            	Line numbers   : 12-23
+            	Modified       : None
+
+.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
+            	Region name    : func
+            	Region type    : function
+            	Offsets        : 256-405
+            	Line numbers   : 26-40
+            	Modified       : None
+
+.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 285-391
+                	Line numbers   : 28-38
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 306-387
+                    	Line numbers   : 30-37
+                    	Modified       : None
+
+.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
+            	Region name    : func_to_be_removed_in_new_sources
+            	Region type    : function
+            	Offsets        : 408-596
+            	Line numbers   : 42-56
+            	Modified       : None
+
+.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 466-577
+                	Line numbers   : 44-54
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 487-573
+                    	Line numbers   : 46-53
+                    	Modified       : None
+
+.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
+            	Region name    : never
+            	Region type    : function
+            	Offsets        : 599-669
+            	Line numbers   : 58-65
+            	Modified       : None
+
+./simple.cpp:0: info: Metrics per file
+	std.code.filelines:code: 53
+	std.code.filelines:preprocessor: 1
+	std.code.filelines:comments: 5
+	std.code.filelines:total: 58
+
+./simple.cpp:: info: Overall metrics for 'std.code.filelines:code' metric
+	Average        : 53.0
+	Minimum        : 53
+	Maximum        : 53
+	Total          : 53.0
+	Distribution   : 1 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	            53 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.filelines:preprocessor' metric
+	Average        : 1.0
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 1.0
+	Distribution   : 1 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	             1 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.filelines:comments' metric
+	Average        : 5.0
+	Minimum        : 5
+	Maximum        : 5
+	Total          : 5.0
+	Distribution   : 1 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	             5 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.filelines:total' metric
+	Average        : 58.0
+	Minimum        : 58
+	Maximum        : 58
+	Total          : 58.0
+	Distribution   : 1 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	            58 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+

+ 44 - 44
tests/general/test_basic/test_std_filelines_metrics_view_txt_stdout.gold.txt

@@ -1,44 +1,44 @@
-./:: info: Overall metrics for 'std.code.filelines:total' metric
-	Average        : 41.5
-	Minimum        : 25
-	Maximum        : 58
-	Total          : 83.0
-	Distribution   : 2 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	            25 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-	            58 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.filelines:code' metric
-	Average        : 37.0
-	Minimum        : 21
-	Maximum        : 53
-	Total          : 74.0
-	Distribution   : 2 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	            21 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-	            53 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.filelines:preprocessor' metric
-	Average        : 0.5
-	Minimum        : 0
-	Maximum        : 1
-	Total          : 1.0
-	Distribution   : 2 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	             0 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.filelines:comments' metric
-	Average        : 5.0
-	Minimum        : 5
-	Maximum        : 5
-	Total          : 10.0
-	Distribution   : 2 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	             5 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.filelines:code' metric
+	Average        : 37.0
+	Minimum        : 21
+	Maximum        : 53
+	Total          : 74.0
+	Distribution   : 2 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	            21 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+	            53 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.filelines:preprocessor' metric
+	Average        : 0.5
+	Minimum        : 0
+	Maximum        : 1
+	Total          : 1.0
+	Distribution   : 2 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	             0 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.filelines:comments' metric
+	Average        : 5.0
+	Minimum        : 5
+	Maximum        : 5
+	Total          : 10.0
+	Distribution   : 2 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	             5 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.filelines:total' metric
+	Average        : 41.5
+	Minimum        : 25
+	Maximum        : 58
+	Total          : 83.0
+	Distribution   : 2 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	            25 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+	            58 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 108 - 108
tests/general/test_basic/test_std_general_metrics_view_nest_per_file_stdout.gold.txt

@@ -1,108 +1,108 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-697
-	Line numbers   : 1-71
-	Modified       : None
-
-.   ./simple.cpp:4: info: Metrics per 'hmm' region
-    	Region name    : hmm
-    	Region type    : namespace
-    	Offsets        : 2-696
-    	Line numbers   : 3-70
-    	Modified       : None
-
-.   .   ./simple.cpp:9: info: Metrics per 'A' region
-        	Region name    : A
-        	Region type    : class
-        	Offsets        : 94-692
-        	Line numbers   : 9-68
-        	Modified       : None
-
-.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
-            	Region name    : A
-            	Region type    : function
-            	Offsets        : 106-252
-            	Line numbers   : 12-23
-            	Modified       : None
-
-.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
-            	Region name    : func
-            	Region type    : function
-            	Offsets        : 256-405
-            	Line numbers   : 26-40
-            	Modified       : None
-
-.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 285-391
-                	Line numbers   : 28-38
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 306-387
-                    	Line numbers   : 30-37
-                    	Modified       : None
-
-.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
-            	Region name    : func_to_be_removed_in_new_sources
-            	Region type    : function
-            	Offsets        : 408-596
-            	Line numbers   : 42-56
-            	Modified       : None
-
-.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 466-577
-                	Line numbers   : 44-54
-                	Modified       : None
-
-.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 487-573
-                    	Line numbers   : 46-53
-                    	Modified       : None
-
-.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
-            	Region name    : never
-            	Region type    : function
-            	Offsets        : 599-669
-            	Line numbers   : 58-65
-            	Modified       : None
-
-./simple.cpp:0: info: Metrics per file
-	std.general:proctime: 0.01
-	std.general:size: 697
-
-./simple.cpp:: info: Overall metrics for 'std.general:procerrors' metric
-	Average        : None
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./simple.cpp:: info: Overall metrics for 'std.general:proctime' metric
-	Average        : 0.01
-	Minimum        : 0.01
-	Maximum        : 0.01
-	Total          : 0.01
-	Distribution   : 1 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	        0.0100 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.general:size' metric
-	Average        : 697.0
-	Minimum        : 697
-	Maximum        : 697
-	Total          : 697.0
-	Distribution   : 1 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	           697 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-697
+	Line numbers   : 1-71
+	Modified       : None
+
+.   ./simple.cpp:4: info: Metrics per 'hmm' region
+    	Region name    : hmm
+    	Region type    : namespace
+    	Offsets        : 2-696
+    	Line numbers   : 3-70
+    	Modified       : None
+
+.   .   ./simple.cpp:9: info: Metrics per 'A' region
+        	Region name    : A
+        	Region type    : class
+        	Offsets        : 94-692
+        	Line numbers   : 9-68
+        	Modified       : None
+
+.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
+            	Region name    : A
+            	Region type    : function
+            	Offsets        : 106-252
+            	Line numbers   : 12-23
+            	Modified       : None
+
+.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
+            	Region name    : func
+            	Region type    : function
+            	Offsets        : 256-405
+            	Line numbers   : 26-40
+            	Modified       : None
+
+.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 285-391
+                	Line numbers   : 28-38
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 306-387
+                    	Line numbers   : 30-37
+                    	Modified       : None
+
+.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
+            	Region name    : func_to_be_removed_in_new_sources
+            	Region type    : function
+            	Offsets        : 408-596
+            	Line numbers   : 42-56
+            	Modified       : None
+
+.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 466-577
+                	Line numbers   : 44-54
+                	Modified       : None
+
+.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 487-573
+                    	Line numbers   : 46-53
+                    	Modified       : None
+
+.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
+            	Region name    : never
+            	Region type    : function
+            	Offsets        : 599-669
+            	Line numbers   : 58-65
+            	Modified       : None
+
+./simple.cpp:0: info: Metrics per file
+	std.general:proctime: 0.01
+	std.general:size: 697
+
+./simple.cpp:: info: Overall metrics for 'std.general:proctime' metric
+	Average        : 0.01
+	Minimum        : 0.01
+	Maximum        : 0.01
+	Total          : 0.01
+	Distribution   : 1 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	        0.0100 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.general:procerrors' metric
+	Average        : None
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+./simple.cpp:: info: Overall metrics for 'std.general:size' metric
+	Average        : 697.0
+	Minimum        : 697
+	Maximum        : 697
+	Total          : 697.0
+	Distribution   : 1 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	           697 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+

+ 32 - 32
tests/general/test_basic/test_std_general_metrics_view_txt_stdout.gold.txt

@@ -1,32 +1,32 @@
-./:: info: Overall metrics for 'std.general:procerrors' metric
-	Average        : None
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./:: info: Overall metrics for 'std.general:proctime' metric
-	Average        : 0.01
-	Minimum        : 0.01
-	Maximum        : 0.01
-	Total          : 0.02
-	Distribution   : 2 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	        0.0100 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.general:size' metric
-	Average        : 488.0
-	Minimum        : 279
-	Maximum        : 697
-	Total          : 976.0
-	Distribution   : 2 files in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-	           279 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-	           697 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.general:proctime' metric
+	Average        : 0.01
+	Minimum        : 0.01
+	Maximum        : 0.01
+	Total          : 0.02
+	Distribution   : 2 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	        0.0100 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.general:procerrors' metric
+	Average        : None
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+./:: info: Overall metrics for 'std.general:size' metric
+	Average        : 488.0
+	Minimum        : 279
+	Maximum        : 697
+	Total          : 976.0
+	Distribution   : 2 files in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+	           279 : 0.500 : 0.500 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+	           697 : 0.500 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 173 - 173
tests/general/test_basic/test_std_lines_metrics_view_nest_per_file_stdout.gold.txt

@@ -1,173 +1,173 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-697
-	Line numbers   : 1-71
-	Modified       : None
-	std.code.lines:code: 0
-	std.code.lines:total: 0
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 0
-
-.   ./simple.cpp:4: info: Metrics per 'hmm' region
-    	Region name    : hmm
-    	Region type    : namespace
-    	Offsets        : 2-696
-    	Line numbers   : 3-70
-    	Modified       : None
-    	std.code.lines:code: 4
-    	std.code.lines:total: 6
-    	std.code.lines:preprocessor: 1
-    	std.code.lines:comments: 1
-
-.   .   ./simple.cpp:9: info: Metrics per 'A' region
-        	Region name    : A
-        	Region type    : class
-        	Offsets        : 94-692
-        	Line numbers   : 9-68
-        	Modified       : None
-        	std.code.lines:code: 4
-        	std.code.lines:total: 4
-        	std.code.lines:preprocessor: 0
-        	std.code.lines:comments: 0
-
-.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
-            	Region name    : A
-            	Region type    : function
-            	Offsets        : 106-252
-            	Line numbers   : 12-23
-            	Modified       : None
-            	std.code.lines:code: 11
-            	std.code.lines:total: 12
-            	std.code.lines:preprocessor: 0
-            	std.code.lines:comments: 2
-
-.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
-            	Region name    : func
-            	Region type    : function
-            	Offsets        : 256-405
-            	Line numbers   : 26-40
-            	Modified       : None
-            	std.code.lines:code: 5
-            	std.code.lines:total: 5
-            	std.code.lines:preprocessor: 0
-            	std.code.lines:comments: 0
-
-.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 285-391
-                	Line numbers   : 28-38
-                	Modified       : None
-                	std.code.lines:code: 3
-                	std.code.lines:total: 3
-                	std.code.lines:preprocessor: 0
-                	std.code.lines:comments: 0
-
-.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 306-387
-                    	Line numbers   : 30-37
-                    	Modified       : None
-                    	std.code.lines:code: 7
-                    	std.code.lines:total: 8
-                    	std.code.lines:preprocessor: 0
-                    	std.code.lines:comments: 1
-
-.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
-            	Region name    : func_to_be_removed_in_new_sources
-            	Region type    : function
-            	Offsets        : 408-596
-            	Line numbers   : 42-56
-            	Modified       : None
-            	std.code.lines:code: 5
-            	std.code.lines:total: 5
-            	std.code.lines:preprocessor: 0
-            	std.code.lines:comments: 0
-
-.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 466-577
-                	Line numbers   : 44-54
-                	Modified       : None
-                	std.code.lines:code: 3
-                	std.code.lines:total: 3
-                	std.code.lines:preprocessor: 0
-                	std.code.lines:comments: 0
-
-.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 487-573
-                    	Line numbers   : 46-53
-                    	Modified       : None
-                    	std.code.lines:code: 7
-                    	std.code.lines:total: 8
-                    	std.code.lines:preprocessor: 0
-                    	std.code.lines:comments: 1
-
-.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
-            	Region name    : never
-            	Region type    : function
-            	Offsets        : 599-669
-            	Line numbers   : 58-65
-            	Modified       : None
-            	std.code.lines:code: 7
-            	std.code.lines:total: 7
-            	std.code.lines:preprocessor: 0
-            	std.code.lines:comments: 0
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 5.54545454545
-	Minimum        : 0
-	Maximum        : 12
-	Total          : 61.0
-	Distribution   : 11 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.091 : 0.091 :  1	|||||||||
-	             3 : 0.182 : 0.273 :  2	||||||||||||||||||
-	             4 : 0.091 : 0.364 :  1	|||||||||
-	             5 : 0.182 : 0.545 :  2	||||||||||||||||||
-	             6 : 0.091 : 0.636 :  1	|||||||||
-	             7 : 0.091 : 0.727 :  1	|||||||||
-	             8 : 0.182 : 0.909 :  2	||||||||||||||||||
-	            12 : 0.091 : 1.000 :  1	|||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 5.09090909091
-	Minimum        : 0
-	Maximum        : 11
-	Total          : 56.0
-	Distribution   : 11 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.091 : 0.091 :  1	|||||||||
-	             3 : 0.182 : 0.273 :  2	||||||||||||||||||
-	             4 : 0.182 : 0.455 :  2	||||||||||||||||||
-	             5 : 0.182 : 0.636 :  2	||||||||||||||||||
-	             7 : 0.273 : 0.909 :  3	|||||||||||||||||||||||||||
-	            11 : 0.091 : 1.000 :  1	|||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.0909090909091
-	Minimum        : 0
-	Maximum        : 1
-	Total          : 1.0
-	Distribution   : 11 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.909 : 0.909 : 10	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.091 : 1.000 :  1	|||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.454545454545
-	Minimum        : 0
-	Maximum        : 2
-	Total          : 5.0
-	Distribution   : 11 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.636 : 0.636 :  7	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.273 : 0.909 :  3	|||||||||||||||||||||||||||
-	             2 : 0.091 : 1.000 :  1	|||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-697
+	Line numbers   : 1-71
+	Modified       : None
+	std.code.lines:code: 0
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 0
+	std.code.lines:total: 0
+
+.   ./simple.cpp:4: info: Metrics per 'hmm' region
+    	Region name    : hmm
+    	Region type    : namespace
+    	Offsets        : 2-696
+    	Line numbers   : 3-70
+    	Modified       : None
+    	std.code.lines:code: 4
+    	std.code.lines:preprocessor: 1
+    	std.code.lines:comments: 1
+    	std.code.lines:total: 6
+
+.   .   ./simple.cpp:9: info: Metrics per 'A' region
+        	Region name    : A
+        	Region type    : class
+        	Offsets        : 94-692
+        	Line numbers   : 9-68
+        	Modified       : None
+        	std.code.lines:code: 4
+        	std.code.lines:preprocessor: 0
+        	std.code.lines:comments: 0
+        	std.code.lines:total: 4
+
+.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
+            	Region name    : A
+            	Region type    : function
+            	Offsets        : 106-252
+            	Line numbers   : 12-23
+            	Modified       : None
+            	std.code.lines:code: 11
+            	std.code.lines:preprocessor: 0
+            	std.code.lines:comments: 2
+            	std.code.lines:total: 12
+
+.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
+            	Region name    : func
+            	Region type    : function
+            	Offsets        : 256-405
+            	Line numbers   : 26-40
+            	Modified       : None
+            	std.code.lines:code: 5
+            	std.code.lines:preprocessor: 0
+            	std.code.lines:comments: 0
+            	std.code.lines:total: 5
+
+.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 285-391
+                	Line numbers   : 28-38
+                	Modified       : None
+                	std.code.lines:code: 3
+                	std.code.lines:preprocessor: 0
+                	std.code.lines:comments: 0
+                	std.code.lines:total: 3
+
+.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 306-387
+                    	Line numbers   : 30-37
+                    	Modified       : None
+                    	std.code.lines:code: 7
+                    	std.code.lines:preprocessor: 0
+                    	std.code.lines:comments: 1
+                    	std.code.lines:total: 8
+
+.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
+            	Region name    : func_to_be_removed_in_new_sources
+            	Region type    : function
+            	Offsets        : 408-596
+            	Line numbers   : 42-56
+            	Modified       : None
+            	std.code.lines:code: 5
+            	std.code.lines:preprocessor: 0
+            	std.code.lines:comments: 0
+            	std.code.lines:total: 5
+
+.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 466-577
+                	Line numbers   : 44-54
+                	Modified       : None
+                	std.code.lines:code: 3
+                	std.code.lines:preprocessor: 0
+                	std.code.lines:comments: 0
+                	std.code.lines:total: 3
+
+.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 487-573
+                    	Line numbers   : 46-53
+                    	Modified       : None
+                    	std.code.lines:code: 7
+                    	std.code.lines:preprocessor: 0
+                    	std.code.lines:comments: 1
+                    	std.code.lines:total: 8
+
+.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
+            	Region name    : never
+            	Region type    : function
+            	Offsets        : 599-669
+            	Line numbers   : 58-65
+            	Modified       : None
+            	std.code.lines:code: 7
+            	std.code.lines:preprocessor: 0
+            	std.code.lines:comments: 0
+            	std.code.lines:total: 7
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 5.0909090909
+	Minimum        : 0
+	Maximum        : 11
+	Total          : 56.0
+	Distribution   : 11 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.091 : 0.091 :  1	|||||||||
+	             3 : 0.182 : 0.273 :  2	||||||||||||||||||
+	             4 : 0.182 : 0.455 :  2	||||||||||||||||||
+	             5 : 0.182 : 0.636 :  2	||||||||||||||||||
+	             7 : 0.273 : 0.909 :  3	|||||||||||||||||||||||||||
+	            11 : 0.091 : 1.000 :  1	|||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.0909090909
+	Minimum        : 0
+	Maximum        : 1
+	Total          : 1.0
+	Distribution   : 11 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.909 : 0.909 : 10	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.091 : 1.000 :  1	|||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.4545454545
+	Minimum        : 0
+	Maximum        : 2
+	Total          : 5.0
+	Distribution   : 11 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.636 : 0.636 :  7	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.273 : 0.909 :  3	|||||||||||||||||||||||||||
+	             2 : 0.091 : 1.000 :  1	|||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 5.5454545455
+	Minimum        : 0
+	Maximum        : 12
+	Total          : 61.0
+	Distribution   : 11 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.091 : 0.091 :  1	|||||||||
+	             3 : 0.182 : 0.273 :  2	||||||||||||||||||
+	             4 : 0.091 : 0.364 :  1	|||||||||
+	             5 : 0.182 : 0.545 :  2	||||||||||||||||||
+	             6 : 0.091 : 0.636 :  1	|||||||||
+	             7 : 0.091 : 0.727 :  1	|||||||||
+	             8 : 0.182 : 0.909 :  2	||||||||||||||||||
+	            12 : 0.091 : 1.000 :  1	|||||||||
+
+

+ 59 - 59
tests/general/test_basic/test_std_lines_metrics_view_txt_stdout.gold.txt

@@ -1,59 +1,59 @@
-./:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 5.4375
-	Minimum        : 0
-	Maximum        : 12
-	Total          : 87.0
-	Distribution   : 16 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.125 : 0.125 :  2	|||||||||||||
-	             3 : 0.188 : 0.312 :  3	|||||||||||||||||||
-	             4 : 0.062 : 0.375 :  1	||||||
-	             5 : 0.125 : 0.500 :  2	|||||||||||||
-	             6 : 0.062 : 0.562 :  1	||||||
-	             7 : 0.188 : 0.750 :  3	|||||||||||||||||||
-	             8 : 0.125 : 0.875 :  2	|||||||||||||
-	             9 : 0.062 : 0.938 :  1	||||||
-	            12 : 0.062 : 1.000 :  1	||||||
-
-./:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 4.875
-	Minimum        : 0
-	Maximum        : 11
-	Total          : 78.0
-	Distribution   : 16 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.125 : 0.125 :  2	|||||||||||||
-	             3 : 0.188 : 0.312 :  3	|||||||||||||||||||
-	             4 : 0.188 : 0.500 :  3	|||||||||||||||||||
-	             5 : 0.125 : 0.625 :  2	|||||||||||||
-	             7 : 0.250 : 0.875 :  4	|||||||||||||||||||||||||
-	             8 : 0.062 : 0.938 :  1	||||||
-	            11 : 0.062 : 1.000 :  1	||||||
-
-./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.0625
-	Minimum        : 0
-	Maximum        : 1
-	Total          : 1.0
-	Distribution   : 16 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.938 : 0.938 : 15	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.062 : 1.000 :  1	||||||
-
-./:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.625
-	Minimum        : 0
-	Maximum        : 3
-	Total          : 10.0
-	Distribution   : 16 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.625 : 0.625 : 10	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.188 : 0.812 :  3	|||||||||||||||||||
-	             2 : 0.125 : 0.938 :  2	|||||||||||||
-	             3 : 0.062 : 1.000 :  1	||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 4.875
+	Minimum        : 0
+	Maximum        : 11
+	Total          : 78.0
+	Distribution   : 16 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.125 : 0.125 :  2	||||||||||||
+	             3 : 0.188 : 0.312 :  3	|||||||||||||||||||
+	             4 : 0.188 : 0.500 :  3	|||||||||||||||||||
+	             5 : 0.125 : 0.625 :  2	||||||||||||
+	             7 : 0.250 : 0.875 :  4	|||||||||||||||||||||||||
+	             8 : 0.062 : 0.938 :  1	||||||
+	            11 : 0.062 : 1.000 :  1	||||||
+
+./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.0625
+	Minimum        : 0
+	Maximum        : 1
+	Total          : 1.0
+	Distribution   : 16 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.938 : 0.938 : 15	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.062 : 1.000 :  1	||||||
+
+./:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.625
+	Minimum        : 0
+	Maximum        : 3
+	Total          : 10.0
+	Distribution   : 16 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.625 : 0.625 : 10	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.188 : 0.812 :  3	|||||||||||||||||||
+	             2 : 0.125 : 0.938 :  2	||||||||||||
+	             3 : 0.062 : 1.000 :  1	||||||
+
+./:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 5.4375
+	Minimum        : 0
+	Maximum        : 12
+	Total          : 87.0
+	Distribution   : 16 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.125 : 0.125 :  2	||||||||||||
+	             3 : 0.188 : 0.312 :  3	|||||||||||||||||||
+	             4 : 0.062 : 0.375 :  1	||||||
+	             5 : 0.125 : 0.500 :  2	||||||||||||
+	             6 : 0.062 : 0.562 :  1	||||||
+	             7 : 0.188 : 0.750 :  3	|||||||||||||||||||
+	             8 : 0.125 : 0.875 :  2	||||||||||||
+	             9 : 0.062 : 0.938 :  1	||||||
+	            12 : 0.062 : 1.000 :  1	||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 157 - 157
tests/general/test_basic/test_std_member_metrics_view_nest_per_file_stdout.gold.txt

@@ -1,157 +1,157 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-697
-	Line numbers   : 1-71
-	Modified       : None
-	std.code.member:namespaces: 1
-
-.   ./simple.cpp:4: info: Metrics per 'hmm' region
-    	Region name    : hmm
-    	Region type    : namespace
-    	Offsets        : 2-696
-    	Line numbers   : 3-70
-    	Modified       : None
-    	std.code.member:classes: 1
-    	std.code.member:types: 1
-
-.   .   ./simple.cpp:9: info: Metrics per 'A' region
-        	Region name    : A
-        	Region type    : class
-        	Offsets        : 94-692
-        	Line numbers   : 9-68
-        	Modified       : None
-        	std.code.member:methods: 4
-
-.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
-            	Region name    : A
-            	Region type    : function
-            	Offsets        : 106-252
-            	Line numbers   : 12-23
-            	Modified       : None
-
-.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
-            	Region name    : func
-            	Region type    : function
-            	Offsets        : 256-405
-            	Line numbers   : 26-40
-            	Modified       : None
-            	std.code.member:classes: 1
-            	std.code.member:types: 1
-
-.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 285-391
-                	Line numbers   : 28-38
-                	Modified       : None
-                	std.code.member:methods: 1
-
-.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 306-387
-                    	Line numbers   : 30-37
-                    	Modified       : None
-
-.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
-            	Region name    : func_to_be_removed_in_new_sources
-            	Region type    : function
-            	Offsets        : 408-596
-            	Line numbers   : 42-56
-            	Modified       : None
-            	std.code.member:classes: 1
-            	std.code.member:types: 1
-
-.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
-                	Region name    : embeded
-                	Region type    : class
-                	Offsets        : 466-577
-                	Line numbers   : 44-54
-                	Modified       : None
-                	std.code.member:methods: 1
-
-.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
-                    	Region name    : embeded
-                    	Region type    : function
-                    	Offsets        : 487-573
-                    	Line numbers   : 46-53
-                    	Modified       : None
-
-.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
-            	Region name    : never
-            	Region type    : function
-            	Offsets        : 599-669
-            	Line numbers   : 58-65
-            	Modified       : None
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:methods' metric
-	Average        : 2.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 4
-	Total          : 6.0
-	Distribution   : 3 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 0.667 : 0.667 : 2	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             4 : 0.333 : 1.000 : 1	|||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:globals' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:fields' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:interfaces' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:classes' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 3.0
-	Distribution   : 3 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 3	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:namespaces' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 1.0
-	Distribution   : 1 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:structs' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./simple.cpp:: info: Overall metrics for 'std.code.member:types' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 3.0
-	Distribution   : 3 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 3	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-697
+	Line numbers   : 1-71
+	Modified       : None
+	std.code.member:namespaces: 1
+
+.   ./simple.cpp:4: info: Metrics per 'hmm' region
+    	Region name    : hmm
+    	Region type    : namespace
+    	Offsets        : 2-696
+    	Line numbers   : 3-70
+    	Modified       : None
+    	std.code.member:classes: 1
+    	std.code.member:types: 1
+
+.   .   ./simple.cpp:9: info: Metrics per 'A' region
+        	Region name    : A
+        	Region type    : class
+        	Offsets        : 94-692
+        	Line numbers   : 9-68
+        	Modified       : None
+        	std.code.member:methods: 4
+
+.   .   .   ./simple.cpp:12: info: Metrics per 'A' region
+            	Region name    : A
+            	Region type    : function
+            	Offsets        : 106-252
+            	Line numbers   : 12-23
+            	Modified       : None
+
+.   .   .   ./simple.cpp:26: info: Metrics per 'func' region
+            	Region name    : func
+            	Region type    : function
+            	Offsets        : 256-405
+            	Line numbers   : 26-40
+            	Modified       : None
+            	std.code.member:classes: 1
+            	std.code.member:types: 1
+
+.   .   .   .   ./simple.cpp:28: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 285-391
+                	Line numbers   : 28-38
+                	Modified       : None
+                	std.code.member:methods: 1
+
+.   .   .   .   .   ./simple.cpp:30: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 306-387
+                    	Line numbers   : 30-37
+                    	Modified       : None
+
+.   .   .   ./simple.cpp:42: info: Metrics per 'func_to_be_removed_in_new_sources' region
+            	Region name    : func_to_be_removed_in_new_sources
+            	Region type    : function
+            	Offsets        : 408-596
+            	Line numbers   : 42-56
+            	Modified       : None
+            	std.code.member:classes: 1
+            	std.code.member:types: 1
+
+.   .   .   .   ./simple.cpp:44: info: Metrics per 'embeded' region
+                	Region name    : embeded
+                	Region type    : class
+                	Offsets        : 466-577
+                	Line numbers   : 44-54
+                	Modified       : None
+                	std.code.member:methods: 1
+
+.   .   .   .   .   ./simple.cpp:46: info: Metrics per 'embeded' region
+                    	Region name    : embeded
+                    	Region type    : function
+                    	Offsets        : 487-573
+                    	Line numbers   : 46-53
+                    	Modified       : None
+
+.   .   .   ./simple.cpp:58: info: Metrics per 'never' region
+            	Region name    : never
+            	Region type    : function
+            	Offsets        : 599-669
+            	Line numbers   : 58-65
+            	Modified       : None
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:fields' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:globals' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:classes' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 3.0
+	Distribution   : 3 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 3	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:structs' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:interfaces' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:types' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 3.0
+	Distribution   : 3 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 3	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:methods' metric
+	Average        : 2.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 4
+	Total          : 6.0
+	Distribution   : 3 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 0.667 : 0.667 : 2	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             4 : 0.333 : 1.000 : 1	|||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.member:namespaces' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 1.0
+	Distribution   : 1 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 1	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+

+ 74 - 74
tests/general/test_basic/test_std_member_metrics_view_txt_stdout.gold.txt

@@ -1,74 +1,74 @@
-./:: info: Overall metrics for 'std.code.member:methods' metric
-	Average        : 1.6 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 4
-	Total          : 8.0
-	Distribution   : 5 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 0.800 : 0.800 : 4	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             4 : 0.200 : 1.000 : 1	||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.member:globals' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./:: info: Overall metrics for 'std.code.member:fields' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./:: info: Overall metrics for 'std.code.member:interfaces' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./:: info: Overall metrics for 'std.code.member:classes' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 4.0
-	Distribution   : 4 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 4	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.member:namespaces' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 2.0
-	Distribution   : 2 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.member:structs' metric
-	Average        : None (excluding zero metric values)
-	Minimum        : None
-	Maximum        : None
-	Total          : 0.0
-	Distribution   : 0 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-
-./:: info: Overall metrics for 'std.code.member:types' metric
-	Average        : 1.0 (excluding zero metric values)
-	Minimum        : 1
-	Maximum        : 1
-	Total          : 4.0
-	Distribution   : 4 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 4	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.member:fields' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./:: info: Overall metrics for 'std.code.member:globals' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./:: info: Overall metrics for 'std.code.member:classes' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 4.0
+	Distribution   : 4 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 4	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.member:structs' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./:: info: Overall metrics for 'std.code.member:interfaces' metric
+	Average        : None (excluding zero metric values)
+	Minimum        : None
+	Maximum        : None
+	Total          : 0.0
+	Distribution   : 0 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+
+./:: info: Overall metrics for 'std.code.member:types' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 4.0
+	Distribution   : 4 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 4	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.member:methods' metric
+	Average        : 1.6 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 4
+	Total          : 8.0
+	Distribution   : 5 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 0.800 : 0.800 : 4	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             4 : 0.200 : 1.000 : 1	||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.member:namespaces' metric
+	Average        : 1.0 (excluding zero metric values)
+	Minimum        : 1
+	Maximum        : 1
+	Total          : 2.0
+	Distribution   : 2 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 2	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 115 - 115
tests/general/test_basic/test_view_format_view_nest_per_file_stdout.gold.txt

@@ -1,115 +1,115 @@
-<view>
-
-    <data>
-        <info id="1" path="./simple.cpp" />
-        <file-data>
-            <regions>
-                <region>
-                    <info cursor="0" line_begin="1" line_end="78" modified="False" name="__global__" offset_begin="0" offset_end="836" type="global" />
-                    <data />
-                    <subregions>
-                        <subregion>
-                            <info cursor="4" line_begin="3" line_end="77" modified="True" name="hmm" offset_begin="2" offset_end="835" type="namespace" />
-                            <data />
-                            <subregions>
-                                <subregion>
-                                    <info cursor="10" line_begin="10" line_end="75" modified="True" name="A" offset_begin="111" offset_end="831" type="class" />
-                                    <data />
-                                    <subregions>
-                                        <subregion>
-                                            <info cursor="13" line_begin="13" line_end="24" modified="False" name="A" offset_begin="123" offset_end="269" type="function" />
-                                            <data>
-                                                <std.code.complexity cyclomatic="3">
-                                                    <__diff__ cyclomatic="0" />
-                                                </std.code.complexity>
-                                            </data>
-                                            <subregions>
-                                            </subregions>
-                                        </subregion>
-                                        <subregion>
-                                            <info cursor="26" line_begin="26" line_end="42" modified="False" name="func" offset_begin="272" offset_end="455" type="function" />
-                                            <data>
-                                                <std.code.complexity cyclomatic="1">
-                                                    <__diff__ cyclomatic="0" />
-                                                </std.code.complexity>
-                                            </data>
-                                            <subregions>
-                                                <subregion>
-                                                    <info cursor="28" line_begin="28" line_end="40" modified="False" name="embeded" offset_begin="301" offset_end="441" type="class" />
-                                                    <data />
-                                                    <subregions>
-                                                        <subregion>
-                                                            <info cursor="30" line_begin="30" line_end="39" modified="True" name="embeded" offset_begin="322" offset_end="437" type="function" />
-                                                            <data>
-                                                                <std.code.complexity cyclomatic="2">
-                                                                    <__diff__ cyclomatic="1" />
-                                                                </std.code.complexity>
-                                                            </data>
-                                                            <subregions>
-                                                            </subregions>
-                                                        </subregion>
-                                                    </subregions>
-                                                </subregion>
-                                            </subregions>
-                                        </subregion>
-                                        <subregion>
-                                            <info cursor="44" line_begin="44" line_end="51" modified="True" name="never" offset_begin="458" offset_end="549" type="function" />
-                                            <data>
-                                                <std.code.complexity cyclomatic="1">
-                                                    <__diff__ cyclomatic="0" />
-                                                </std.code.complexity>
-                                            </data>
-                                            <subregions>
-                                            </subregions>
-                                        </subregion>
-                                        <subregion>
-                                            <info cursor="53" line_begin="53" line_end="56" modified="None" name="new_func" offset_begin="552" offset_end="585" type="function" />
-                                            <data>
-                                                <std.code.complexity cyclomatic="0" />
-                                            </data>
-                                            <subregions>
-                                            </subregions>
-                                        </subregion>
-                                        <subregion>
-                                            <info cursor="58" line_begin="58" line_end="62" modified="None" name="new_func_complex" offset_begin="588" offset_end="646" type="function" />
-                                            <data>
-                                                <std.code.complexity cyclomatic="1" />
-                                            </data>
-                                            <subregions>
-                                            </subregions>
-                                        </subregion>
-                                        <subregion>
-                                            <info cursor="65" line_begin="64" line_end="72" modified="None" name="new_func_complex_but_suppressed" offset_begin="649" offset_end="808" type="function" />
-                                            <data>
-                                                <std.code.complexity cyclomatic="2" />
-                                            </data>
-                                            <subregions>
-                                            </subregions>
-                                        </subregion>
-                                    </subregions>
-                                </subregion>
-                            </subregions>
-                        </subregion>
-                    </subregions>
-                </region>
-            </regions>
-        </file-data>
-        <subfiles>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="1.42857142857" count="7" max="3" min="0" nonzero="False" sup="0" total="10.0">
-                    <__diff__ avg="-0.0714285714286" count="1" max="0" min="-1" nonzero="0" sup="0" total="1.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.142857142857" />
-                        <distribution-bar __diff__="-1" count="3" metric="1" ratio="0.428571428571" />
-                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.285714285714" />
-                        <distribution-bar __diff__="0" count="1" metric="3" ratio="0.142857142857" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./simple.cpp" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="1.4285714286" count="7" max="3" min="0" nonzero="False" sup="0" total="10.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.1428571429" />
+                        <distribution-bar __diff__="-1" count="3" metric="1" ratio="0.4285714286" />
+                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.2857142857" />
+                        <distribution-bar __diff__="0" count="1" metric="3" ratio="0.1428571429" />
+                    </distribution-bars>
+                    <__diff__ avg="-0.0714285714" count="1" max="0" min="-1" nonzero="0" sup="0" total="1.0" />
+                </cyclomatic>
+            </std.code.complexity>
+        </aggregated-data>
+        <file-data>
+            <regions>
+                <region>
+                    <info cursor="0" line_begin="1" line_end="78" modified="False" name="__global__" offset_begin="0" offset_end="836" type="global" />
+                    <data />
+                    <subregions>
+                        <subregion>
+                            <info cursor="4" line_begin="3" line_end="77" modified="True" name="hmm" offset_begin="2" offset_end="835" type="namespace" />
+                            <data />
+                            <subregions>
+                                <subregion>
+                                    <info cursor="10" line_begin="10" line_end="75" modified="True" name="A" offset_begin="111" offset_end="831" type="class" />
+                                    <data />
+                                    <subregions>
+                                        <subregion>
+                                            <info cursor="13" line_begin="13" line_end="24" modified="False" name="A" offset_begin="123" offset_end="269" type="function" />
+                                            <data>
+                                                <std.code.complexity cyclomatic="3">
+                                                    <__diff__ cyclomatic="0" />
+                                                </std.code.complexity>
+                                            </data>
+                                            <subregions>
+                                            </subregions>
+                                        </subregion>
+                                        <subregion>
+                                            <info cursor="26" line_begin="26" line_end="42" modified="False" name="func" offset_begin="272" offset_end="455" type="function" />
+                                            <data>
+                                                <std.code.complexity cyclomatic="1">
+                                                    <__diff__ cyclomatic="0" />
+                                                </std.code.complexity>
+                                            </data>
+                                            <subregions>
+                                                <subregion>
+                                                    <info cursor="28" line_begin="28" line_end="40" modified="False" name="embeded" offset_begin="301" offset_end="441" type="class" />
+                                                    <data />
+                                                    <subregions>
+                                                        <subregion>
+                                                            <info cursor="30" line_begin="30" line_end="39" modified="True" name="embeded" offset_begin="322" offset_end="437" type="function" />
+                                                            <data>
+                                                                <std.code.complexity cyclomatic="2">
+                                                                    <__diff__ cyclomatic="1" />
+                                                                </std.code.complexity>
+                                                            </data>
+                                                            <subregions>
+                                                            </subregions>
+                                                        </subregion>
+                                                    </subregions>
+                                                </subregion>
+                                            </subregions>
+                                        </subregion>
+                                        <subregion>
+                                            <info cursor="44" line_begin="44" line_end="51" modified="True" name="never" offset_begin="458" offset_end="549" type="function" />
+                                            <data>
+                                                <std.code.complexity cyclomatic="1">
+                                                    <__diff__ cyclomatic="0" />
+                                                </std.code.complexity>
+                                            </data>
+                                            <subregions>
+                                            </subregions>
+                                        </subregion>
+                                        <subregion>
+                                            <info cursor="53" line_begin="53" line_end="56" modified="None" name="new_func" offset_begin="552" offset_end="585" type="function" />
+                                            <data>
+                                                <std.code.complexity cyclomatic="0" />
+                                            </data>
+                                            <subregions>
+                                            </subregions>
+                                        </subregion>
+                                        <subregion>
+                                            <info cursor="58" line_begin="58" line_end="62" modified="None" name="new_func_complex" offset_begin="588" offset_end="646" type="function" />
+                                            <data>
+                                                <std.code.complexity cyclomatic="1" />
+                                            </data>
+                                            <subregions>
+                                            </subregions>
+                                        </subregion>
+                                        <subregion>
+                                            <info cursor="65" line_begin="64" line_end="72" modified="None" name="new_func_complex_but_suppressed" offset_begin="649" offset_end="808" type="function" />
+                                            <data>
+                                                <std.code.complexity cyclomatic="2" />
+                                            </data>
+                                            <subregions>
+                                            </subregions>
+                                        </subregion>
+                                    </subregions>
+                                </subregion>
+                            </subregions>
+                        </subregion>
+                    </subregions>
+                </region>
+            </regions>
+        </file-data>
+        <subdirs>
+        </subdirs>
+        <subfiles>
+        </subfiles>
+    </data>
+</view>

+ 27 - 27
tests/general/test_basic/test_view_format_view_nest_stdout.gold.txt

@@ -1,27 +1,27 @@
-<view>
-
-    <data>
-        <info id="1" path="./" />
-        <file-data />
-        <subfiles>
-            <subfile>file_deleted_in_new_sources.cpp</subfile>
-            <subfile>simple2.cpp</subfile>
-            <subfile>simple.cpp</subfile>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="1.625" count="8" max="3" min="0" nonzero="False" sup="0" total="13.0">
-                    <__diff__ avg="0.25" count="0" max="0" min="-1" nonzero="0" sup="0" total="2.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.125" />
-                        <distribution-bar __diff__="-3" count="3" metric="1" ratio="0.375" />
-                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.25" />
-                        <distribution-bar __diff__="1" count="2" metric="3" ratio="0.25" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="1.625" count="8" max="3" min="0" nonzero="False" sup="0" total="13.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.125" />
+                        <distribution-bar __diff__="-3" count="3" metric="1" ratio="0.375" />
+                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.25" />
+                        <distribution-bar __diff__="1" count="2" metric="3" ratio="0.25" />
+                    </distribution-bars>
+                    <__diff__ avg="0.25" count="0" max="0" min="-1" nonzero="0" sup="0" total="2.0" />
+                </cyclomatic>
+            </std.code.complexity>
+        </aggregated-data>
+        <file-data />
+        <subdirs>
+        </subdirs>
+        <subfiles>
+            <subfile>file_deleted_in_new_sources.cpp</subfile>
+            <subfile>simple.cpp</subfile>
+            <subfile>simple2.cpp</subfile>
+        </subfiles>
+    </data>
+</view>

+ 1 - 1
tests/general/test_basic/test_view_format_view_python_stdout.gold.txt

@@ -1 +1 @@
-{'view': [{'data': {'info': {'path': './', 'id': 1}, 'file-data': {}, 'subfiles': [u'file_deleted_in_new_sources.cpp', u'simple.cpp'], 'subdirs': [], 'aggregated-data': {'std.code.complexity': {'cyclomatic': {'nonzero': False, 'count': 8, 'avg': 1.375, 'min': 1, 'max': 3, 'distribution-bars': [{'count': 6, 'ratio': 0.75, 'metric': '1'}, {'count': 1, 'ratio': 0.125, 'metric': '2'}, {'count': 1, 'ratio': 0.125, 'metric': '3'}], 'sup': 0, 'total': 11.0}}}}}]}
+{'view': [{'data': {'info': {'path': './', 'id': 1}, 'aggregated-data': {'std.code.complexity': {'cyclomatic': {'max': 3, 'min': 1, 'avg': 1.375, 'total': 11.0, 'count': 8, 'nonzero': False, 'distribution-bars': [{'count': 6, 'ratio': 0.75, 'metric': '1'}, {'count': 1, 'ratio': 0.125, 'metric': '2'}, {'count': 1, 'ratio': 0.125, 'metric': '3'}], 'sup': 0}}}, 'file-data': {}, 'subdirs': [], 'subfiles': ['file_deleted_in_new_sources.cpp', 'simple.cpp']}}]}

+ 16 - 16
tests/general/test_basic/test_view_format_view_txt_stdout.gold.txt

@@ -1,16 +1,16 @@
-./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 1.375
-	Minimum        : 1
-	Maximum        : 3
-	Total          : 11.0
-	Distribution   : 8 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 0.750 : 0.750 : 6	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.125 : 0.875 : 1	|||||||||||||
-	             3 : 0.125 : 1.000 : 1	|||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 1.375
+	Minimum        : 1
+	Maximum        : 3
+	Total          : 11.0
+	Distribution   : 8 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 0.750 : 0.750 : 6	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.125 : 0.875 : 1	||||||||||||
+	             3 : 0.125 : 1.000 : 1	||||||||||||
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+
+

+ 24 - 24
tests/general/test_basic/test_view_format_view_xml_stdout.gold.txt

@@ -1,24 +1,24 @@
-<view>
-
-    <data>
-        <info id="1" path="./" />
-        <file-data />
-        <subfiles>
-            <subfile>file_deleted_in_new_sources.cpp</subfile>
-            <subfile>simple.cpp</subfile>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="1.375" count="8" max="3" min="1" nonzero="False" sup="0" total="11.0">
-                    <distribution-bars>
-                        <distribution-bar count="6" metric="1" ratio="0.75" />
-                        <distribution-bar count="1" metric="2" ratio="0.125" />
-                        <distribution-bar count="1" metric="3" ratio="0.125" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="1.375" count="8" max="3" min="1" nonzero="False" sup="0" total="11.0">
+                    <distribution-bars>
+                        <distribution-bar count="6" metric="1" ratio="0.75" />
+                        <distribution-bar count="1" metric="2" ratio="0.125" />
+                        <distribution-bar count="1" metric="3" ratio="0.125" />
+                    </distribution-bars>
+                </cyclomatic>
+            </std.code.complexity>
+        </aggregated-data>
+        <file-data />
+        <subdirs>
+        </subdirs>
+        <subfiles>
+            <subfile>file_deleted_in_new_sources.cpp</subfile>
+            <subfile>simple.cpp</subfile>
+        </subfiles>
+    </data>
+</view>

+ 6 - 6
tests/general/test_basic/test_workflow_collect_default_stderr.gold.txt

@@ -1,6 +1,6 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Excluding: ./.unused.cpp
-[LOG]: INFO:	Skipping: ./dummy.txt
-[LOG]: INFO:	Processing: ./file_deleted_in_new_sources.cpp
-[LOG]: INFO:	Processing: ./simple.cpp
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Excluding: ./.unused.cpp
+[LOG]: INFO:	Skipping: ./dummy.txt
+[LOG]: INFO:	Processing: ./file_deleted_in_new_sources.cpp
+[LOG]: INFO:	Processing: ./simple.cpp
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 5 - 5
tests/general/test_basic/test_workflow_collect_second_stderr.gold.txt

@@ -1,5 +1,5 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Excluding: ./.unused.cpp
-[LOG]: INFO:	Processing: ./simple.cpp
-[LOG]: INFO:	Processing: ./simple2.cpp
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Excluding: ./.unused.cpp
+[LOG]: INFO:	Processing: ./simple.cpp
+[LOG]: INFO:	Processing: ./simple2.cpp
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 3 - 3
tests/general/test_basic/test_workflow_export_default_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 19 - 19
tests/general/test_basic/test_workflow_export_default_stdout.gold.txt

@@ -1,19 +1,19 @@
-file,region,type,modified,line start,line end,std.code.complexity:cyclomatic,std.suppress.file:count,std.suppress.file:list,std.suppress:count,std.suppress:list,std.code.lines:code,std.code.lines:total,std.code.lines:preprocessor,std.code.lines:comments
-./file_deleted_in_new_sources.cpp,__global__,global,,1,34,,,,,,0,0,0,0
-./file_deleted_in_new_sources.cpp,hmm,namespace,,3,24,,,,,,4,7,0,3
-./file_deleted_in_new_sources.cpp,B,class,,9,22,,,,,,3,3,0,0
-./file_deleted_in_new_sources.cpp,B,function,,12,20,1,,,,,8,9,0,2
-./file_deleted_in_new_sources.cpp,never_old,function,,26,33,1,,,,,7,7,0,0
-./file_deleted_in_new_sources.cpp,,file,,1,34,,,,,,,,,
-./simple.cpp,__global__,global,,1,71,,,,,,0,0,0,0
-./simple.cpp,hmm,namespace,,3,70,,,,,,4,6,1,1
-./simple.cpp,A,class,,9,68,,,,,,4,4,0,0
-./simple.cpp,A,function,,12,23,3,,,,,11,12,0,2
-./simple.cpp,func,function,,26,40,1,,,,,5,5,0,0
-./simple.cpp,embeded,class,,28,38,,,,,,3,3,0,0
-./simple.cpp,embeded,function,,30,37,1,,,,,7,8,0,1
-./simple.cpp,func_to_be_removed_in_new_sources,function,,42,56,2,,,,,5,5,0,0
-./simple.cpp,embeded,class,,44,54,,,,,,3,3,0,0
-./simple.cpp,embeded,function,,46,53,1,,,,,7,8,0,1
-./simple.cpp,never,function,,58,65,1,,,,,7,7,0,0
-./simple.cpp,,file,,1,71,,,,,,,,,
+file,region,type,modified,line start,line end,std.code.complexity:cyclomatic,std.code.lines:code,std.code.lines:preprocessor,std.code.lines:comments,std.code.lines:total,std.suppress:count,std.suppress:list,std.suppress.file:count,std.suppress.file:list
+./file_deleted_in_new_sources.cpp,__global__,global,,1,34,,0,0,0,0,,,,
+./file_deleted_in_new_sources.cpp,hmm,namespace,,3,24,,4,0,3,7,,,,
+./file_deleted_in_new_sources.cpp,B,class,,9,22,,3,0,0,3,,,,
+./file_deleted_in_new_sources.cpp,B,function,,12,20,1,8,0,2,9,,,,
+./file_deleted_in_new_sources.cpp,never_old,function,,26,33,1,7,0,0,7,,,,
+./file_deleted_in_new_sources.cpp,,file,,1,34,,,,,,,,,
+./simple.cpp,__global__,global,,1,71,,0,0,0,0,,,,
+./simple.cpp,hmm,namespace,,3,70,,4,1,1,6,,,,
+./simple.cpp,A,class,,9,68,,4,0,0,4,,,,
+./simple.cpp,A,function,,12,23,3,11,0,2,12,,,,
+./simple.cpp,func,function,,26,40,1,5,0,0,5,,,,
+./simple.cpp,embeded,class,,28,38,,3,0,0,3,,,,
+./simple.cpp,embeded,function,,30,37,1,7,0,1,8,,,,
+./simple.cpp,func_to_be_removed_in_new_sources,function,,42,56,2,5,0,0,5,,,,
+./simple.cpp,embeded,class,,44,54,,3,0,0,3,,,,
+./simple.cpp,embeded,function,,46,53,1,7,0,1,8,,,,
+./simple.cpp,never,function,,58,65,1,7,0,0,7,,,,
+./simple.cpp,,file,,1,71,,,,,,,,,

+ 3 - 3
tests/general/test_basic/test_workflow_export_second_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 18 - 18
tests/general/test_basic/test_workflow_export_second_stdout.gold.txt

@@ -1,18 +1,18 @@
-file,region,type,modified,line start,line end,std.code.complexity:cyclomatic,std.suppress.file:count,std.suppress.file:list,std.suppress:count,std.suppress:list,std.code.lines:code,std.code.lines:total,std.code.lines:preprocessor,std.code.lines:comments
-./simple.cpp,__global__,global,False,1,78,,,,,,0,0,0,0
-./simple.cpp,hmm,namespace,True,3,77,,,,,,4,7,2,1
-./simple.cpp,A,class,True,10,75,,,,,,4,4,0,0
-./simple.cpp,A,function,False,13,24,3,,,,,11,12,0,2
-./simple.cpp,func,function,False,26,42,1,,,,,5,5,0,0
-./simple.cpp,embeded,class,False,28,40,,,,,,3,3,0,0
-./simple.cpp,embeded,function,True,30,39,2,,,,,8,9,0,2
-./simple.cpp,never,function,True,44,51,1,,,,,7,7,0,1
-./simple.cpp,new_func,function,,53,56,0,,,,,3,4,0,1
-./simple.cpp,new_func_complex,function,,58,62,1,,,,,5,5,0,0
-./simple.cpp,new_func_complex_but_suppressed,function,,64,72,2,,,1,[std.code.complexity:cyclomatic],8,9,0,1
-./simple.cpp,,file,True,1,78,,,,,,,,,
-./simple2.cpp,__global__,global,,1,26,,,,,,0,0,0,0
-./simple2.cpp,hmm,namespace,,3,25,,,,,,4,5,0,1
-./simple2.cpp,New_A,class,,7,23,,,,,,3,3,0,0
-./simple2.cpp,New_A,function,,10,21,3,,,,,10,12,0,2
-./simple2.cpp,,file,,1,26,,,,,,,,,
+file,region,type,modified,line start,line end,std.code.complexity:cyclomatic,std.code.lines:code,std.code.lines:preprocessor,std.code.lines:comments,std.code.lines:total,std.suppress:count,std.suppress:list,std.suppress.file:count,std.suppress.file:list
+./simple.cpp,__global__,global,False,1,78,,0,0,0,0,,,,
+./simple.cpp,hmm,namespace,True,3,77,,4,2,1,7,,,,
+./simple.cpp,A,class,True,10,75,,4,0,0,4,,,,
+./simple.cpp,A,function,False,13,24,3,11,0,2,12,,,,
+./simple.cpp,func,function,False,26,42,1,5,0,0,5,,,,
+./simple.cpp,embeded,class,False,28,40,,3,0,0,3,,,,
+./simple.cpp,embeded,function,True,30,39,2,8,0,2,9,,,,
+./simple.cpp,never,function,True,44,51,1,7,0,1,7,,,,
+./simple.cpp,new_func,function,,53,56,0,3,0,1,4,,,,
+./simple.cpp,new_func_complex,function,,58,62,1,5,0,0,5,,,,
+./simple.cpp,new_func_complex_but_suppressed,function,,64,72,2,8,0,1,9,1,[std.code.complexity:cyclomatic],,
+./simple.cpp,,file,True,1,78,,,,,,,,,
+./simple2.cpp,__global__,global,,1,26,,0,0,0,0,,,,
+./simple2.cpp,hmm,namespace,,3,25,,4,0,1,5,,,,
+./simple2.cpp,New_A,class,,7,23,,3,0,0,3,,,,
+./simple2.cpp,New_A,function,,10,21,3,10,0,2,12,,,,
+./simple2.cpp,,file,,1,26,,,,,,,,,

+ 3 - 3
tests/general/test_basic/test_workflow_info_default_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 31 - 31
tests/general/test_basic/test_workflow_info_default_stdout.gold.txt

@@ -1,31 +1,31 @@
-test_workflow.db:: info: Created using plugins and settings:
-	version        : 1.0
-	std.code.complexity:version: 1.1
-	std.code.cpp:version: 1.1
-	std.code.cpp:files: *.c,*.cc,*.cpp,*.cxx,*.h,*.hh,*.hpp,*.hxx
-	std.code.cs:version: 1.0
-	std.code.cs:files: *.cs
-	std.code.java:version: 1.1
-	std.code.java:files: *.java
-	std.code.lines:version: 1.1
-	std.code.magic:version: 1.2
-	std.code.magic:number.simplier: False
-	std.code.todo:version: 1.0
-	std.code.todo:tags: FIXME,FixMe,HACK,TBD,TODO,ToDo,XXX
-	std.suppress:version: 1.0
-
-test_workflow.db:: info: Collected metrics:
-	std.code.complexity:cyclomatic: 
-	std.code.lines:code: 
-	std.code.lines:comments: 
-	std.code.lines:preprocessor: 
-	std.code.lines:total: 
-	std.suppress:count: 
-	std.suppress:list: 
-	std.suppress.file:count: 
-	std.suppress.file:list: 
-
-./:: info: Processed files and checksums:
-	./file_deleted_in_new_sources.cpp: 0xfd51c243
-	./simple.cpp   : 0xcf51202e
-
+test_workflow.db:: info: Created using plugins and settings:
+	version        : 1.0
+	std.code.complexity:version: 1.1
+	std.code.cpp:version: 1.1
+	std.code.cpp:files: *.c,*.cc,*.cpp,*.cxx,*.h,*.hh,*.hpp,*.hxx
+	std.code.cs:version: 1.0
+	std.code.cs:files: *.cs
+	std.code.java:version: 1.1
+	std.code.java:files: *.java
+	std.code.lines:version: 1.1
+	std.code.magic:version: 1.2
+	std.code.magic:number.simplier: False
+	std.code.todo:version: 1.0
+	std.code.todo:tags: FIXME,FixMe,HACK,TBD,TODO,ToDo,XXX
+	std.suppress:version: 1.0
+
+test_workflow.db:: info: Collected metrics:
+	std.code.complexity:cyclomatic: 
+	std.code.lines:code: 
+	std.code.lines:comments: 
+	std.code.lines:preprocessor: 
+	std.code.lines:total: 
+	std.suppress:count: 
+	std.suppress:list: 
+	std.suppress.file:count: 
+	std.suppress.file:list: 
+
+./:: info: Processed files and checksums:
+	./file_deleted_in_new_sources.cpp: 0xfd51c243
+	./simple.cpp   : 0xcf51202e
+

+ 3 - 3
tests/general/test_basic/test_workflow_info_second_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 31 - 31
tests/general/test_basic/test_workflow_info_second_stdout.gold.txt

@@ -1,31 +1,31 @@
-test_workflow.db:: info: Created using plugins and settings:
-	version        : 1.0
-	std.code.complexity:version: 1.1
-	std.code.cpp:version: 1.1
-	std.code.cpp:files: *.c,*.cc,*.cpp,*.cxx,*.h,*.hh,*.hpp,*.hxx
-	std.code.cs:version: 1.0
-	std.code.cs:files: *.cs
-	std.code.java:version: 1.1
-	std.code.java:files: *.java
-	std.code.lines:version: 1.1
-	std.code.magic:version: 1.2
-	std.code.magic:number.simplier: False
-	std.code.todo:version: 1.0
-	std.code.todo:tags: FIXME,FixMe,HACK,TBD,TODO,ToDo,XXX
-	std.suppress:version: 1.0
-
-test_workflow.db:: info: Collected metrics:
-	std.code.complexity:cyclomatic: 
-	std.code.lines:code: 
-	std.code.lines:comments: 
-	std.code.lines:preprocessor: 
-	std.code.lines:total: 
-	std.suppress:count: 
-	std.suppress:list: 
-	std.suppress.file:count: 
-	std.suppress.file:list: 
-
-./:: info: Processed files and checksums:
-	./simple.cpp   : 0xa0fb97eb [modified]
-	./simple2.cpp  : 0x44023f81 [new]
-
+test_workflow.db:: info: Created using plugins and settings:
+	version        : 1.0
+	std.code.complexity:version: 1.1
+	std.code.cpp:version: 1.1
+	std.code.cpp:files: *.c,*.cc,*.cpp,*.cxx,*.h,*.hh,*.hpp,*.hxx
+	std.code.cs:version: 1.0
+	std.code.cs:files: *.cs
+	std.code.java:version: 1.1
+	std.code.java:files: *.java
+	std.code.lines:version: 1.1
+	std.code.magic:version: 1.2
+	std.code.magic:number.simplier: False
+	std.code.todo:version: 1.0
+	std.code.todo:tags: FIXME,FixMe,HACK,TBD,TODO,ToDo,XXX
+	std.suppress:version: 1.0
+
+test_workflow.db:: info: Collected metrics:
+	std.code.complexity:cyclomatic: 
+	std.code.lines:code: 
+	std.code.lines:comments: 
+	std.code.lines:preprocessor: 
+	std.code.lines:total: 
+	std.suppress:count: 
+	std.suppress:list: 
+	std.suppress.file:count: 
+	std.suppress.file:list: 
+
+./:: info: Processed files and checksums:
+	./simple.cpp   : 0xa0fb97eb [modified]
+	./simple2.cpp  : 0x44023f81 [new]
+

+ 4 - 4
tests/general/test_basic/test_workflow_limit_default_stderr.gold.txt

@@ -1,4 +1,4 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 8
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 8

+ 74 - 74
tests/general/test_basic/test_workflow_limit_default_stdout.gold.txt

@@ -1,74 +1,74 @@
-./file_deleted_in_new_sources.cpp:12: warning: Metric 'std.code.complexity:cyclomatic' for region 'B' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : B
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./file_deleted_in_new_sources.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'never_old' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : never_old
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:12: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : A
-	Metric value   : 3
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'func' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : func
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : embeded
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:42: warning: Metric 'std.code.complexity:cyclomatic' for region 'func_to_be_removed_in_new_sources' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : func_to_be_removed_in_new_sources
-	Metric value   : 2
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:46: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : embeded
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : never
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 8 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./file_deleted_in_new_sources.cpp:12: warning: Metric 'std.code.complexity:cyclomatic' for region 'B' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : B
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./file_deleted_in_new_sources.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'never_old' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : never_old
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:12: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : A
+	Metric value   : 3
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'func' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : func
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : embeded
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:42: warning: Metric 'std.code.complexity:cyclomatic' for region 'func_to_be_removed_in_new_sources' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : func_to_be_removed_in_new_sources
+	Metric value   : 2
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:46: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : embeded
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : never
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 8 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 4 - 4
tests/general/test_basic/test_workflow_limit_second_stderr.gold.txt

@@ -1,4 +1,4 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 6
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 6

+ 56 - 56
tests/general/test_basic/test_workflow_limit_second_stdout.gold.txt

@@ -1,56 +1,56 @@
-./simple.cpp:13: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : A
-	Metric value   : 3
-	Modified       : False
-	Change trend   : 0
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'func' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : func
-	Metric value   : 1
-	Modified       : False
-	Change trend   : 0
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : embeded
-	Metric value   : 2
-	Modified       : True
-	Change trend   : +1
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:44: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : never
-	Metric value   : 1
-	Modified       : True
-	Change trend   : 0
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : new_func_complex
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : New_A
-	Metric value   : 3
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./simple.cpp:13: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : A
+	Metric value   : 3
+	Modified       : False
+	Change trend   : 0
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'func' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : func
+	Metric value   : 1
+	Modified       : False
+	Change trend   : 0
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : embeded
+	Metric value   : 2
+	Modified       : True
+	Change trend   : +1
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:44: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : never
+	Metric value   : 1
+	Modified       : True
+	Change trend   : 0
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : new_func_complex
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : New_A
+	Metric value   : 3
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 4 - 4
tests/general/test_basic/test_workflow_limit_second_warn_all_stderr.gold.txt

@@ -1,4 +1,4 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 6
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 6

+ 56 - 56
tests/general/test_basic/test_workflow_limit_second_warn_all_stdout.gold.txt

@@ -1,56 +1,56 @@
-./simple.cpp:13: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : A
-	Metric value   : 3
-	Modified       : False
-	Change trend   : 0
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'func' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : func
-	Metric value   : 1
-	Modified       : False
-	Change trend   : 0
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : embeded
-	Metric value   : 2
-	Modified       : True
-	Change trend   : +1
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:44: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : never
-	Metric value   : 1
-	Modified       : True
-	Change trend   : 0
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : new_func_complex
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : New_A
-	Metric value   : 3
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./simple.cpp:13: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : A
+	Metric value   : 3
+	Modified       : False
+	Change trend   : 0
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:26: warning: Metric 'std.code.complexity:cyclomatic' for region 'func' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : func
+	Metric value   : 1
+	Modified       : False
+	Change trend   : 0
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : embeded
+	Metric value   : 2
+	Modified       : True
+	Change trend   : +1
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:44: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : never
+	Metric value   : 1
+	Modified       : True
+	Change trend   : 0
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : new_func_complex
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : New_A
+	Metric value   : 3
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 6 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 5 - 5
tests/general/test_basic/test_workflow_limit_second_warn_new_stderr.gold.txt

@@ -1,5 +1,5 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Identifying changed files...
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 2
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Identifying changed files...
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 2

+ 20 - 20
tests/general/test_basic/test_workflow_limit_second_warn_new_stdout.gold.txt

@@ -1,20 +1,20 @@
-./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : new_func_complex
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : New_A
-	Metric value   : 3
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 2 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : new_func_complex
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : New_A
+	Metric value   : 3
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 2 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 5 - 5
tests/general/test_basic/test_workflow_limit_second_warn_touched_stderr.gold.txt

@@ -1,5 +1,5 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Identifying changed files...
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 4
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Identifying changed files...
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 4

+ 38 - 38
tests/general/test_basic/test_workflow_limit_second_warn_touched_stdout.gold.txt

@@ -1,38 +1,38 @@
-./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : embeded
-	Metric value   : 2
-	Modified       : True
-	Change trend   : +1
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:44: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : never
-	Metric value   : 1
-	Modified       : True
-	Change trend   : 0
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : new_func_complex
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : New_A
-	Metric value   : 3
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 4 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : embeded
+	Metric value   : 2
+	Modified       : True
+	Change trend   : +1
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:44: warning: Metric 'std.code.complexity:cyclomatic' for region 'never' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : never
+	Metric value   : 1
+	Modified       : True
+	Change trend   : 0
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : new_func_complex
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : New_A
+	Metric value   : 3
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 4 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 5 - 5
tests/general/test_basic/test_workflow_limit_second_warn_trend_stderr.gold.txt

@@ -1,5 +1,5 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Identifying changed files...
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 3
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Identifying changed files...
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Applying limit: 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 3

+ 29 - 29
tests/general/test_basic/test_workflow_limit_second_warn_trend_stdout.gold.txt

@@ -1,29 +1,29 @@
-./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : embeded
-	Metric value   : 2
-	Modified       : True
-	Change trend   : +1
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : new_func_complex
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : New_A
-	Metric value   : 3
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 3 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./simple.cpp:30: warning: Metric 'std.code.complexity:cyclomatic' for region 'embeded' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : embeded
+	Metric value   : 2
+	Modified       : True
+	Change trend   : +1
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple.cpp:58: warning: Metric 'std.code.complexity:cyclomatic' for region 'new_func_complex' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : new_func_complex
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./simple2.cpp:10: warning: Metric 'std.code.complexity:cyclomatic' for region 'New_A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : New_A
+	Metric value   : 3
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 3 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 3 - 3
tests/general/test_basic/test_workflow_view_default_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 76 - 76
tests/general/test_basic/test_workflow_view_default_stdout.gold.txt

@@ -1,76 +1,76 @@
-<view>
-
-    <data>
-        <info id="1" path="./" />
-        <file-data />
-        <subfiles>
-            <subfile>file_deleted_in_new_sources.cpp</subfile>
-            <subfile>simple.cpp</subfile>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="1.375" count="8" max="3" min="1" nonzero="False" sup="0" total="11.0">
-                    <distribution-bars>
-                        <distribution-bar count="6" metric="1" ratio="0.75" />
-                        <distribution-bar count="1" metric="2" ratio="0.125" />
-                        <distribution-bar count="1" metric="3" ratio="0.125" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-            <std.suppress.file>
-                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
-                    <distribution-bars>
-                    </distribution-bars>
-                </count>
-            </std.suppress.file>
-            <std.suppress>
-                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
-                    <distribution-bars>
-                    </distribution-bars>
-                </count>
-            </std.suppress>
-            <std.code.lines>
-                <total avg="5.4375" count="16" max="12" min="0" nonzero="False" sup="0" total="87.0">
-                    <distribution-bars>
-                        <distribution-bar count="2" metric="0" ratio="0.125" />
-                        <distribution-bar count="3" metric="3" ratio="0.1875" />
-                        <distribution-bar count="1" metric="4" ratio="0.0625" />
-                        <distribution-bar count="2" metric="5" ratio="0.125" />
-                        <distribution-bar count="1" metric="6" ratio="0.0625" />
-                        <distribution-bar count="3" metric="7" ratio="0.1875" />
-                        <distribution-bar count="2" metric="8" ratio="0.125" />
-                        <distribution-bar count="1" metric="9" ratio="0.0625" />
-                        <distribution-bar count="1" metric="12" ratio="0.0625" />
-                    </distribution-bars>
-                </total>
-                <code avg="4.875" count="16" max="11" min="0" nonzero="False" sup="0" total="78.0">
-                    <distribution-bars>
-                        <distribution-bar count="2" metric="0" ratio="0.125" />
-                        <distribution-bar count="3" metric="3" ratio="0.1875" />
-                        <distribution-bar count="3" metric="4" ratio="0.1875" />
-                        <distribution-bar count="2" metric="5" ratio="0.125" />
-                        <distribution-bar count="4" metric="7" ratio="0.25" />
-                        <distribution-bar count="1" metric="8" ratio="0.0625" />
-                        <distribution-bar count="1" metric="11" ratio="0.0625" />
-                    </distribution-bars>
-                </code>
-                <preprocessor avg="0.0625" count="16" max="1" min="0" nonzero="False" sup="0" total="1.0">
-                    <distribution-bars>
-                        <distribution-bar count="15" metric="0" ratio="0.9375" />
-                        <distribution-bar count="1" metric="1" ratio="0.0625" />
-                    </distribution-bars>
-                </preprocessor>
-                <comments avg="0.625" count="16" max="3" min="0" nonzero="False" sup="0" total="10.0">
-                    <distribution-bars>
-                        <distribution-bar count="10" metric="0" ratio="0.625" />
-                        <distribution-bar count="3" metric="1" ratio="0.1875" />
-                        <distribution-bar count="2" metric="2" ratio="0.125" />
-                        <distribution-bar count="1" metric="3" ratio="0.0625" />
-                    </distribution-bars>
-                </comments>
-            </std.code.lines>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="1.375" count="8" max="3" min="1" nonzero="False" sup="0" total="11.0">
+                    <distribution-bars>
+                        <distribution-bar count="6" metric="1" ratio="0.75" />
+                        <distribution-bar count="1" metric="2" ratio="0.125" />
+                        <distribution-bar count="1" metric="3" ratio="0.125" />
+                    </distribution-bars>
+                </cyclomatic>
+            </std.code.complexity>
+            <std.code.lines>
+                <code avg="4.875" count="16" max="11" min="0" nonzero="False" sup="0" total="78.0">
+                    <distribution-bars>
+                        <distribution-bar count="2" metric="0" ratio="0.125" />
+                        <distribution-bar count="3" metric="3" ratio="0.1875" />
+                        <distribution-bar count="3" metric="4" ratio="0.1875" />
+                        <distribution-bar count="2" metric="5" ratio="0.125" />
+                        <distribution-bar count="4" metric="7" ratio="0.25" />
+                        <distribution-bar count="1" metric="8" ratio="0.0625" />
+                        <distribution-bar count="1" metric="11" ratio="0.0625" />
+                    </distribution-bars>
+                </code>
+                <preprocessor avg="0.0625" count="16" max="1" min="0" nonzero="False" sup="0" total="1.0">
+                    <distribution-bars>
+                        <distribution-bar count="15" metric="0" ratio="0.9375" />
+                        <distribution-bar count="1" metric="1" ratio="0.0625" />
+                    </distribution-bars>
+                </preprocessor>
+                <comments avg="0.625" count="16" max="3" min="0" nonzero="False" sup="0" total="10.0">
+                    <distribution-bars>
+                        <distribution-bar count="10" metric="0" ratio="0.625" />
+                        <distribution-bar count="3" metric="1" ratio="0.1875" />
+                        <distribution-bar count="2" metric="2" ratio="0.125" />
+                        <distribution-bar count="1" metric="3" ratio="0.0625" />
+                    </distribution-bars>
+                </comments>
+                <total avg="5.4375" count="16" max="12" min="0" nonzero="False" sup="0" total="87.0">
+                    <distribution-bars>
+                        <distribution-bar count="2" metric="0" ratio="0.125" />
+                        <distribution-bar count="3" metric="3" ratio="0.1875" />
+                        <distribution-bar count="1" metric="4" ratio="0.0625" />
+                        <distribution-bar count="2" metric="5" ratio="0.125" />
+                        <distribution-bar count="1" metric="6" ratio="0.0625" />
+                        <distribution-bar count="3" metric="7" ratio="0.1875" />
+                        <distribution-bar count="2" metric="8" ratio="0.125" />
+                        <distribution-bar count="1" metric="9" ratio="0.0625" />
+                        <distribution-bar count="1" metric="12" ratio="0.0625" />
+                    </distribution-bars>
+                </total>
+            </std.code.lines>
+            <std.suppress>
+                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
+                    <distribution-bars>
+                    </distribution-bars>
+                </count>
+            </std.suppress>
+            <std.suppress.file>
+                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
+                    <distribution-bars>
+                    </distribution-bars>
+                </count>
+            </std.suppress.file>
+        </aggregated-data>
+        <file-data />
+        <subdirs>
+        </subdirs>
+        <subfiles>
+            <subfile>file_deleted_in_new_sources.cpp</subfile>
+            <subfile>simple.cpp</subfile>
+        </subfiles>
+    </data>
+</view>

+ 3 - 3
tests/general/test_basic/test_workflow_view_second_per_file_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./simple.cpp
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./simple.cpp
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 184 - 184
tests/general/test_basic/test_workflow_view_second_per_file_stdout.gold.txt

@@ -1,184 +1,184 @@
-<view>
-
-    <data>
-        <info id="1" path="./simple.cpp" />
-        <file-data>
-            <regions>
-                <region>
-                    <info cursor="0" line_begin="1" line_end="78" modified="False" name="__global__" offset_begin="0" offset_end="836" type="global" />
-                    <data>
-                        <std.code.lines code="0" comments="0" preprocessor="0" total="0">
-                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="4" line_begin="3" line_end="77" modified="True" name="hmm" offset_begin="2" offset_end="835" type="namespace" />
-                    <data>
-                        <std.code.lines code="4" comments="1" preprocessor="2" total="7">
-                            <__diff__ code="0" comments="0" preprocessor="1" total="1" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="10" line_begin="10" line_end="75" modified="True" name="A" offset_begin="111" offset_end="831" type="class" />
-                    <data>
-                        <std.code.lines code="4" comments="0" preprocessor="0" total="4">
-                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="13" line_begin="13" line_end="24" modified="False" name="A" offset_begin="123" offset_end="269" type="function" />
-                    <data>
-                        <std.code.complexity cyclomatic="3">
-                            <__diff__ cyclomatic="0" />
-                        </std.code.complexity>
-                        <std.code.lines code="11" comments="2" preprocessor="0" total="12">
-                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="26" line_begin="26" line_end="42" modified="False" name="func" offset_begin="272" offset_end="455" type="function" />
-                    <data>
-                        <std.code.complexity cyclomatic="1">
-                            <__diff__ cyclomatic="0" />
-                        </std.code.complexity>
-                        <std.code.lines code="5" comments="0" preprocessor="0" total="5">
-                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="28" line_begin="28" line_end="40" modified="False" name="embeded" offset_begin="301" offset_end="441" type="class" />
-                    <data>
-                        <std.code.lines code="3" comments="0" preprocessor="0" total="3">
-                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="30" line_begin="30" line_end="39" modified="True" name="embeded" offset_begin="322" offset_end="437" type="function" />
-                    <data>
-                        <std.code.complexity cyclomatic="2">
-                            <__diff__ cyclomatic="1" />
-                        </std.code.complexity>
-                        <std.code.lines code="8" comments="2" preprocessor="0" total="9">
-                            <__diff__ code="1" comments="1" preprocessor="0" total="1" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="44" line_begin="44" line_end="51" modified="True" name="never" offset_begin="458" offset_end="549" type="function" />
-                    <data>
-                        <std.code.complexity cyclomatic="1">
-                            <__diff__ cyclomatic="0" />
-                        </std.code.complexity>
-                        <std.code.lines code="7" comments="1" preprocessor="0" total="7">
-                            <__diff__ code="0" comments="1" preprocessor="0" total="0" />
-                        </std.code.lines>
-                    </data>
-                </region>
-                <region>
-                    <info cursor="53" line_begin="53" line_end="56" modified="None" name="new_func" offset_begin="552" offset_end="585" type="function" />
-                    <data>
-                        <std.code.complexity cyclomatic="0" />
-                        <std.code.lines code="3" comments="1" preprocessor="0" total="4" />
-                    </data>
-                </region>
-                <region>
-                    <info cursor="58" line_begin="58" line_end="62" modified="None" name="new_func_complex" offset_begin="588" offset_end="646" type="function" />
-                    <data>
-                        <std.code.complexity cyclomatic="1" />
-                        <std.code.lines code="5" comments="0" preprocessor="0" total="5" />
-                    </data>
-                </region>
-                <region>
-                    <info cursor="65" line_begin="64" line_end="72" modified="None" name="new_func_complex_but_suppressed" offset_begin="649" offset_end="808" type="function" />
-                    <data>
-                        <std.code.complexity cyclomatic="2" />
-                        <std.suppress count="1" list="[std.code.complexity:cyclomatic]" />
-                        <std.code.lines code="8" comments="1" preprocessor="0" total="9" />
-                    </data>
-                </region>
-            </regions>
-        </file-data>
-        <subfiles>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="1.42857142857" count="7" max="3" min="0" nonzero="False" sup="1" total="10.0">
-                    <__diff__ avg="-0.0714285714286" count="1" max="0" min="-1" nonzero="0" sup="1" total="1.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.142857142857" />
-                        <distribution-bar __diff__="-1" count="3" metric="1" ratio="0.428571428571" />
-                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.285714285714" />
-                        <distribution-bar __diff__="0" count="1" metric="3" ratio="0.142857142857" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-            <std.suppress.file>
-                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
-                    <__diff__ avg="0" count="0" max="0" min="0" nonzero="0" sup="0" total="0.0" />
-                    <distribution-bars>
-                    </distribution-bars>
-                </count>
-            </std.suppress.file>
-            <std.suppress>
-                <count avg="1.0" count="1" max="1" min="1" nonzero="True" sup="0" total="1.0">
-                    <__diff__ avg="1.0" count="1" max="1" min="1" nonzero="0" sup="0" total="1.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="1" count="1" metric="1" ratio="1.0" />
-                    </distribution-bars>
-                </count>
-            </std.suppress>
-            <std.code.lines>
-                <total avg="5.90909090909" count="11" max="12" min="0" nonzero="False" sup="0" total="65.0">
-                    <__diff__ avg="0.363636363636" count="0" max="0" min="0" nonzero="0" sup="0" total="4.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="0" count="1" metric="0" ratio="0.0909090909091" />
-                        <distribution-bar __diff__="-1" count="1" metric="3" ratio="0.0909090909091" />
-                        <distribution-bar __diff__="1" count="2" metric="4" ratio="0.181818181818" />
-                        <distribution-bar __diff__="0" count="2" metric="5" ratio="0.181818181818" />
-                        <distribution-bar __diff__="-1" count="0" metric="6" ratio="0" />
-                        <distribution-bar __diff__="1" count="2" metric="7" ratio="0.181818181818" />
-                        <distribution-bar __diff__="-2" count="0" metric="8" ratio="0" />
-                        <distribution-bar __diff__="2" count="2" metric="9" ratio="0.181818181818" />
-                        <distribution-bar __diff__="0" count="1" metric="12" ratio="0.0909090909091" />
-                    </distribution-bars>
-                </total>
-                <code avg="5.27272727273" count="11" max="11" min="0" nonzero="False" sup="0" total="58.0">
-                    <__diff__ avg="0.181818181818" count="0" max="0" min="0" nonzero="0" sup="0" total="2.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="0" count="1" metric="0" ratio="0.0909090909091" />
-                        <distribution-bar __diff__="0" count="2" metric="3" ratio="0.181818181818" />
-                        <distribution-bar __diff__="0" count="2" metric="4" ratio="0.181818181818" />
-                        <distribution-bar __diff__="0" count="2" metric="5" ratio="0.181818181818" />
-                        <distribution-bar __diff__="-2" count="1" metric="7" ratio="0.0909090909091" />
-                        <distribution-bar __diff__="2" count="2" metric="8" ratio="0.181818181818" />
-                        <distribution-bar __diff__="0" count="1" metric="11" ratio="0.0909090909091" />
-                    </distribution-bars>
-                </code>
-                <preprocessor avg="0.181818181818" count="11" max="2" min="0" nonzero="False" sup="0" total="2.0">
-                    <__diff__ avg="0.0909090909091" count="0" max="1" min="0" nonzero="0" sup="0" total="1.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="0" count="10" metric="0" ratio="0.909090909091" />
-                        <distribution-bar __diff__="-1" count="0" metric="1" ratio="0" />
-                        <distribution-bar __diff__="1" count="1" metric="2" ratio="0.0909090909091" />
-                    </distribution-bars>
-                </preprocessor>
-                <comments avg="0.727272727273" count="11" max="2" min="0" nonzero="False" sup="0" total="8.0">
-                    <__diff__ avg="0.272727272727" count="0" max="0" min="0" nonzero="0" sup="0" total="3.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="-2" count="5" metric="0" ratio="0.454545454545" />
-                        <distribution-bar __diff__="1" count="4" metric="1" ratio="0.363636363636" />
-                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.181818181818" />
-                    </distribution-bars>
-                </comments>
-            </std.code.lines>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./simple.cpp" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="1.4285714286" count="7" max="3" min="0" nonzero="False" sup="1" total="10.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.1428571429" />
+                        <distribution-bar __diff__="-1" count="3" metric="1" ratio="0.4285714286" />
+                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.2857142857" />
+                        <distribution-bar __diff__="0" count="1" metric="3" ratio="0.1428571429" />
+                    </distribution-bars>
+                    <__diff__ avg="-0.0714285714" count="1" max="0" min="-1" nonzero="0" sup="1" total="1.0" />
+                </cyclomatic>
+            </std.code.complexity>
+            <std.code.lines>
+                <code avg="5.2727272727" count="11" max="11" min="0" nonzero="False" sup="0" total="58.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="0" count="1" metric="0" ratio="0.0909090909" />
+                        <distribution-bar __diff__="0" count="2" metric="3" ratio="0.1818181818" />
+                        <distribution-bar __diff__="0" count="2" metric="4" ratio="0.1818181818" />
+                        <distribution-bar __diff__="0" count="2" metric="5" ratio="0.1818181818" />
+                        <distribution-bar __diff__="-2" count="1" metric="7" ratio="0.0909090909" />
+                        <distribution-bar __diff__="2" count="2" metric="8" ratio="0.1818181818" />
+                        <distribution-bar __diff__="0" count="1" metric="11" ratio="0.0909090909" />
+                    </distribution-bars>
+                    <__diff__ avg="0.1818181818" count="0" max="0" min="0" nonzero="0" sup="0" total="2.0" />
+                </code>
+                <preprocessor avg="0.1818181818" count="11" max="2" min="0" nonzero="False" sup="0" total="2.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="0" count="10" metric="0" ratio="0.9090909091" />
+                        <distribution-bar __diff__="-1" count="0" metric="1" ratio="0" />
+                        <distribution-bar __diff__="1" count="1" metric="2" ratio="0.0909090909" />
+                    </distribution-bars>
+                    <__diff__ avg="0.0909090909" count="0" max="1" min="0" nonzero="0" sup="0" total="1.0" />
+                </preprocessor>
+                <comments avg="0.7272727273" count="11" max="2" min="0" nonzero="False" sup="0" total="8.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="-2" count="5" metric="0" ratio="0.4545454545" />
+                        <distribution-bar __diff__="1" count="4" metric="1" ratio="0.3636363636" />
+                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.1818181818" />
+                    </distribution-bars>
+                    <__diff__ avg="0.2727272727" count="0" max="0" min="0" nonzero="0" sup="0" total="3.0" />
+                </comments>
+                <total avg="5.9090909091" count="11" max="12" min="0" nonzero="False" sup="0" total="65.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="0" count="1" metric="0" ratio="0.0909090909" />
+                        <distribution-bar __diff__="-1" count="1" metric="3" ratio="0.0909090909" />
+                        <distribution-bar __diff__="1" count="2" metric="4" ratio="0.1818181818" />
+                        <distribution-bar __diff__="0" count="2" metric="5" ratio="0.1818181818" />
+                        <distribution-bar __diff__="-1" count="0" metric="6" ratio="0" />
+                        <distribution-bar __diff__="1" count="2" metric="7" ratio="0.1818181818" />
+                        <distribution-bar __diff__="-2" count="0" metric="8" ratio="0" />
+                        <distribution-bar __diff__="2" count="2" metric="9" ratio="0.1818181818" />
+                        <distribution-bar __diff__="0" count="1" metric="12" ratio="0.0909090909" />
+                    </distribution-bars>
+                    <__diff__ avg="0.3636363636" count="0" max="0" min="0" nonzero="0" sup="0" total="4.0" />
+                </total>
+            </std.code.lines>
+            <std.suppress>
+                <count avg="1.0" count="1" max="1" min="1" nonzero="True" sup="0" total="1.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="1" count="1" metric="1" ratio="1.0" />
+                    </distribution-bars>
+                    <__diff__ avg="1.0" count="1" max="1" min="1" nonzero="0" sup="0" total="1.0" />
+                </count>
+            </std.suppress>
+            <std.suppress.file>
+                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
+                    <distribution-bars>
+                    </distribution-bars>
+                    <__diff__ avg="0" count="0" max="0" min="0" nonzero="0" sup="0" total="0.0" />
+                </count>
+            </std.suppress.file>
+        </aggregated-data>
+        <file-data>
+            <regions>
+                <region>
+                    <info cursor="0" line_begin="1" line_end="78" modified="False" name="__global__" offset_begin="0" offset_end="836" type="global" />
+                    <data>
+                        <std.code.lines code="0" comments="0" preprocessor="0" total="0">
+                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="4" line_begin="3" line_end="77" modified="True" name="hmm" offset_begin="2" offset_end="835" type="namespace" />
+                    <data>
+                        <std.code.lines code="4" comments="1" preprocessor="2" total="7">
+                            <__diff__ code="0" comments="0" preprocessor="1" total="1" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="10" line_begin="10" line_end="75" modified="True" name="A" offset_begin="111" offset_end="831" type="class" />
+                    <data>
+                        <std.code.lines code="4" comments="0" preprocessor="0" total="4">
+                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="13" line_begin="13" line_end="24" modified="False" name="A" offset_begin="123" offset_end="269" type="function" />
+                    <data>
+                        <std.code.complexity cyclomatic="3">
+                            <__diff__ cyclomatic="0" />
+                        </std.code.complexity>
+                        <std.code.lines code="11" comments="2" preprocessor="0" total="12">
+                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="26" line_begin="26" line_end="42" modified="False" name="func" offset_begin="272" offset_end="455" type="function" />
+                    <data>
+                        <std.code.complexity cyclomatic="1">
+                            <__diff__ cyclomatic="0" />
+                        </std.code.complexity>
+                        <std.code.lines code="5" comments="0" preprocessor="0" total="5">
+                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="28" line_begin="28" line_end="40" modified="False" name="embeded" offset_begin="301" offset_end="441" type="class" />
+                    <data>
+                        <std.code.lines code="3" comments="0" preprocessor="0" total="3">
+                            <__diff__ code="0" comments="0" preprocessor="0" total="0" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="30" line_begin="30" line_end="39" modified="True" name="embeded" offset_begin="322" offset_end="437" type="function" />
+                    <data>
+                        <std.code.complexity cyclomatic="2">
+                            <__diff__ cyclomatic="1" />
+                        </std.code.complexity>
+                        <std.code.lines code="8" comments="2" preprocessor="0" total="9">
+                            <__diff__ code="1" comments="1" preprocessor="0" total="1" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="44" line_begin="44" line_end="51" modified="True" name="never" offset_begin="458" offset_end="549" type="function" />
+                    <data>
+                        <std.code.complexity cyclomatic="1">
+                            <__diff__ cyclomatic="0" />
+                        </std.code.complexity>
+                        <std.code.lines code="7" comments="1" preprocessor="0" total="7">
+                            <__diff__ code="0" comments="1" preprocessor="0" total="0" />
+                        </std.code.lines>
+                    </data>
+                </region>
+                <region>
+                    <info cursor="53" line_begin="53" line_end="56" modified="None" name="new_func" offset_begin="552" offset_end="585" type="function" />
+                    <data>
+                        <std.code.complexity cyclomatic="0" />
+                        <std.code.lines code="3" comments="1" preprocessor="0" total="4" />
+                    </data>
+                </region>
+                <region>
+                    <info cursor="58" line_begin="58" line_end="62" modified="None" name="new_func_complex" offset_begin="588" offset_end="646" type="function" />
+                    <data>
+                        <std.code.complexity cyclomatic="1" />
+                        <std.code.lines code="5" comments="0" preprocessor="0" total="5" />
+                    </data>
+                </region>
+                <region>
+                    <info cursor="65" line_begin="64" line_end="72" modified="None" name="new_func_complex_but_suppressed" offset_begin="649" offset_end="808" type="function" />
+                    <data>
+                        <std.code.complexity cyclomatic="2" />
+                        <std.code.lines code="8" comments="1" preprocessor="0" total="9" />
+                        <std.suppress count="1" list="[std.code.complexity:cyclomatic]" />
+                    </data>
+                </region>
+            </regions>
+        </file-data>
+        <subdirs>
+        </subdirs>
+        <subfiles>
+        </subfiles>
+    </data>
+</view>

+ 3 - 3
tests/general/test_basic/test_workflow_view_second_per_file_txt_all_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./simple.cpp
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./simple.cpp
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 214 - 214
tests/general/test_basic/test_workflow_view_second_per_file_txt_all_stdout.gold.txt

@@ -1,214 +1,214 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-836
-	Line numbers   : 1-78
-	Modified       : False
-	std.code.lines:code: 0 [+0]
-	std.code.lines:total: 0 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:4: info: Metrics per 'hmm' region
-	Region name    : hmm
-	Region type    : namespace
-	Offsets        : 2-835
-	Line numbers   : 3-77
-	Modified       : True
-	std.code.lines:code: 4 [+0]
-	std.code.lines:total: 7 [+1]
-	std.code.lines:preprocessor: 2 [+1]
-	std.code.lines:comments: 1 [+0]
-
-./simple.cpp:10: info: Metrics per 'A' region
-	Region name    : A
-	Region type    : class
-	Offsets        : 111-831
-	Line numbers   : 10-75
-	Modified       : True
-	std.code.lines:code: 4 [+0]
-	std.code.lines:total: 4 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:13: info: Metrics per 'A' region
-	Region name    : A
-	Region type    : function
-	Offsets        : 123-269
-	Line numbers   : 13-24
-	Modified       : False
-	std.code.complexity:cyclomatic: 3 [+0]
-	std.code.lines:code: 11 [+0]
-	std.code.lines:total: 12 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 2 [+0]
-
-./simple.cpp:26: info: Metrics per 'func' region
-	Region name    : func
-	Region type    : function
-	Offsets        : 272-455
-	Line numbers   : 26-42
-	Modified       : False
-	std.code.complexity:cyclomatic: 1 [+0]
-	std.code.lines:code: 5 [+0]
-	std.code.lines:total: 5 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:28: info: Metrics per 'embeded' region
-	Region name    : embeded
-	Region type    : class
-	Offsets        : 301-441
-	Line numbers   : 28-40
-	Modified       : False
-	std.code.lines:code: 3 [+0]
-	std.code.lines:total: 3 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:30: info: Metrics per 'embeded' region
-	Region name    : embeded
-	Region type    : function
-	Offsets        : 322-437
-	Line numbers   : 30-39
-	Modified       : True
-	std.code.complexity:cyclomatic: 2 [+1]
-	std.code.lines:code: 8 [+1]
-	std.code.lines:total: 9 [+1]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 2 [+1]
-
-./simple.cpp:44: info: Metrics per 'never' region
-	Region name    : never
-	Region type    : function
-	Offsets        : 458-549
-	Line numbers   : 44-51
-	Modified       : True
-	std.code.complexity:cyclomatic: 1 [+0]
-	std.code.lines:code: 7 [+0]
-	std.code.lines:total: 7 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 1 [+1]
-
-./simple.cpp:53: info: Metrics per 'new_func' region
-	Region name    : new_func
-	Region type    : function
-	Offsets        : 552-585
-	Line numbers   : 53-56
-	Modified       : None
-	std.code.complexity:cyclomatic: 0
-	std.code.lines:code: 3
-	std.code.lines:total: 4
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 1
-
-./simple.cpp:58: info: Metrics per 'new_func_complex' region
-	Region name    : new_func_complex
-	Region type    : function
-	Offsets        : 588-646
-	Line numbers   : 58-62
-	Modified       : None
-	std.code.complexity:cyclomatic: 1
-	std.code.lines:code: 5
-	std.code.lines:total: 5
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 0
-
-./simple.cpp:65: info: Metrics per 'new_func_complex_but_suppressed' region
-	Region name    : new_func_complex_but_suppressed
-	Region type    : function
-	Offsets        : 649-808
-	Line numbers   : 64-72
-	Modified       : None
-	std.code.complexity:cyclomatic: 2
-	std.suppress:count: 1
-	std.suppress:list: [std.code.complexity:cyclomatic]
-	std.code.lines:code: 8
-	std.code.lines:total: 9
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 1
-
-./simple.cpp:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 1.42857142857 [-0.0714285714286]
-	Minimum        : 0 [-1]
-	Maximum        : 3 [+0]
-	Total          : 10.0 [+1.0]
-	Distribution   : 7 [+1] regions in total (including 1 [+1] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.143 : 0.143 : 1 [+1]	||||||||||||||
-	             1 : 0.429 : 0.571 : 3 [-1]	|||||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.286 : 0.857 : 2 [+1]	|||||||||||||||||||||||||||||
-	             3 : 0.143 : 1.000 : 1 [+0]	||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.suppress.file:count' metric
-	Average        : None [+0] (excluding zero metric values)
-	Minimum        : None [+0]
-	Maximum        : None [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./simple.cpp:: info: Overall metrics for 'std.suppress:count' metric
-	Average        : 1.0 [+1.0] (excluding zero metric values)
-	Minimum        : 1 [+1]
-	Maximum        : 1 [+1]
-	Total          : 1.0 [+1.0]
-	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 5.90909090909 [+0.363636363636]
-	Minimum        : 0 [+0]
-	Maximum        : 12 [+0]
-	Total          : 65.0 [+4.0]
-	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
-	             3 : 0.091 : 0.182 :  1 [-1 ]	|||||||||
-	             4 : 0.182 : 0.364 :  2 [+1 ]	||||||||||||||||||
-	             5 : 0.182 : 0.545 :  2 [+0 ]	||||||||||||||||||
-	             6 : 0.000 : 0.545 :  0 [-1 ]	
-	             7 : 0.182 : 0.727 :  2 [+1 ]	||||||||||||||||||
-	             8 : 0.000 : 0.727 :  0 [-2 ]	
-	             9 : 0.182 : 0.909 :  2 [+2 ]	||||||||||||||||||
-	            12 : 0.091 : 1.000 :  1 [+0 ]	|||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 5.27272727273 [+0.181818181818]
-	Minimum        : 0 [+0]
-	Maximum        : 11 [+0]
-	Total          : 58.0 [+2.0]
-	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
-	             3 : 0.182 : 0.273 :  2 [+0 ]	||||||||||||||||||
-	             4 : 0.182 : 0.455 :  2 [+0 ]	||||||||||||||||||
-	             5 : 0.182 : 0.636 :  2 [+0 ]	||||||||||||||||||
-	             7 : 0.091 : 0.727 :  1 [-2 ]	|||||||||
-	             8 : 0.182 : 0.909 :  2 [+2 ]	||||||||||||||||||
-	            11 : 0.091 : 1.000 :  1 [+0 ]	|||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.181818181818 [+0.0909090909091]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+1]
-	Total          : 2.0 [+1.0]
-	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.909 : 0.909 : 10 [+0 ]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.000 : 0.909 :  0 [-1 ]	
-	             2 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.727272727273 [+0.272727272727]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+0]
-	Total          : 8.0 [+3.0]
-	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.455 : 0.455 :  5 [-2 ]	|||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.364 : 0.818 :  4 [+1 ]	||||||||||||||||||||||||||||||||||||
-	             2 : 0.182 : 1.000 :  2 [+1 ]	||||||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-836
+	Line numbers   : 1-78
+	Modified       : False
+	std.code.lines:code: 0 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 0 [+0]
+
+./simple.cpp:4: info: Metrics per 'hmm' region
+	Region name    : hmm
+	Region type    : namespace
+	Offsets        : 2-835
+	Line numbers   : 3-77
+	Modified       : True
+	std.code.lines:code: 4 [+0]
+	std.code.lines:preprocessor: 2 [+1]
+	std.code.lines:comments: 1 [+0]
+	std.code.lines:total: 7 [+1]
+
+./simple.cpp:10: info: Metrics per 'A' region
+	Region name    : A
+	Region type    : class
+	Offsets        : 111-831
+	Line numbers   : 10-75
+	Modified       : True
+	std.code.lines:code: 4 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 4 [+0]
+
+./simple.cpp:13: info: Metrics per 'A' region
+	Region name    : A
+	Region type    : function
+	Offsets        : 123-269
+	Line numbers   : 13-24
+	Modified       : False
+	std.code.complexity:cyclomatic: 3 [+0]
+	std.code.lines:code: 11 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 2 [+0]
+	std.code.lines:total: 12 [+0]
+
+./simple.cpp:26: info: Metrics per 'func' region
+	Region name    : func
+	Region type    : function
+	Offsets        : 272-455
+	Line numbers   : 26-42
+	Modified       : False
+	std.code.complexity:cyclomatic: 1 [+0]
+	std.code.lines:code: 5 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 5 [+0]
+
+./simple.cpp:28: info: Metrics per 'embeded' region
+	Region name    : embeded
+	Region type    : class
+	Offsets        : 301-441
+	Line numbers   : 28-40
+	Modified       : False
+	std.code.lines:code: 3 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 3 [+0]
+
+./simple.cpp:30: info: Metrics per 'embeded' region
+	Region name    : embeded
+	Region type    : function
+	Offsets        : 322-437
+	Line numbers   : 30-39
+	Modified       : True
+	std.code.complexity:cyclomatic: 2 [+1]
+	std.code.lines:code: 8 [+1]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 2 [+1]
+	std.code.lines:total: 9 [+1]
+
+./simple.cpp:44: info: Metrics per 'never' region
+	Region name    : never
+	Region type    : function
+	Offsets        : 458-549
+	Line numbers   : 44-51
+	Modified       : True
+	std.code.complexity:cyclomatic: 1 [+0]
+	std.code.lines:code: 7 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 1 [+1]
+	std.code.lines:total: 7 [+0]
+
+./simple.cpp:53: info: Metrics per 'new_func' region
+	Region name    : new_func
+	Region type    : function
+	Offsets        : 552-585
+	Line numbers   : 53-56
+	Modified       : None
+	std.code.complexity:cyclomatic: 0
+	std.code.lines:code: 3
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 1
+	std.code.lines:total: 4
+
+./simple.cpp:58: info: Metrics per 'new_func_complex' region
+	Region name    : new_func_complex
+	Region type    : function
+	Offsets        : 588-646
+	Line numbers   : 58-62
+	Modified       : None
+	std.code.complexity:cyclomatic: 1
+	std.code.lines:code: 5
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 0
+	std.code.lines:total: 5
+
+./simple.cpp:65: info: Metrics per 'new_func_complex_but_suppressed' region
+	Region name    : new_func_complex_but_suppressed
+	Region type    : function
+	Offsets        : 649-808
+	Line numbers   : 64-72
+	Modified       : None
+	std.code.complexity:cyclomatic: 2
+	std.code.lines:code: 8
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 1
+	std.code.lines:total: 9
+	std.suppress:count: 1
+	std.suppress:list: [std.code.complexity:cyclomatic]
+
+./simple.cpp:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 1.4285714286 [-0.0714285714]
+	Minimum        : 0 [-1]
+	Maximum        : 3 [+0]
+	Total          : 10.0 [+1.0]
+	Distribution   : 7 [+1] regions in total (including 1 [+1] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.143 : 0.143 : 1 [+1]	||||||||||||||
+	             1 : 0.429 : 0.571 : 3 [-1]	|||||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.286 : 0.857 : 2 [+1]	|||||||||||||||||||||||||||||
+	             3 : 0.143 : 1.000 : 1 [+0]	||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 5.2727272727 [+0.1818181818]
+	Minimum        : 0 [+0]
+	Maximum        : 11 [+0]
+	Total          : 58.0 [+2.0]
+	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
+	             3 : 0.182 : 0.273 :  2 [+0 ]	||||||||||||||||||
+	             4 : 0.182 : 0.455 :  2 [+0 ]	||||||||||||||||||
+	             5 : 0.182 : 0.636 :  2 [+0 ]	||||||||||||||||||
+	             7 : 0.091 : 0.727 :  1 [-2 ]	|||||||||
+	             8 : 0.182 : 0.909 :  2 [+2 ]	||||||||||||||||||
+	            11 : 0.091 : 1.000 :  1 [+0 ]	|||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.1818181818 [+0.0909090909]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+1]
+	Total          : 2.0 [+1.0]
+	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.909 : 0.909 : 10 [+0 ]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.000 : 0.909 :  0 [-1 ]	
+	             2 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.7272727273 [+0.2727272727]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+0]
+	Total          : 8.0 [+3.0]
+	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.455 : 0.455 :  5 [-2 ]	|||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.364 : 0.818 :  4 [+1 ]	||||||||||||||||||||||||||||||||||||
+	             2 : 0.182 : 1.000 :  2 [+1 ]	||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 5.9090909091 [+0.3636363636]
+	Minimum        : 0 [+0]
+	Maximum        : 12 [+0]
+	Total          : 65.0 [+4.0]
+	Distribution   : 11 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
+	             3 : 0.091 : 0.182 :  1 [-1 ]	|||||||||
+	             4 : 0.182 : 0.364 :  2 [+1 ]	||||||||||||||||||
+	             5 : 0.182 : 0.545 :  2 [+0 ]	||||||||||||||||||
+	             6 : 0.000 : 0.545 :  0 [-1 ]	
+	             7 : 0.182 : 0.727 :  2 [+1 ]	||||||||||||||||||
+	             8 : 0.000 : 0.727 :  0 [-2 ]	
+	             9 : 0.182 : 0.909 :  2 [+2 ]	||||||||||||||||||
+	            12 : 0.091 : 1.000 :  1 [+0 ]	|||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.suppress:count' metric
+	Average        : 1.0 [+1.0] (excluding zero metric values)
+	Minimum        : 1 [+1]
+	Maximum        : 1 [+1]
+	Total          : 1.0 [+1.0]
+	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.suppress.file:count' metric
+	Average        : None [+0] (excluding zero metric values)
+	Minimum        : None [+0]
+	Maximum        : None [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+

+ 4 - 4
tests/general/test_basic/test_workflow_view_second_per_file_txt_new_stderr.gold.txt

@@ -1,4 +1,4 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./simple.cpp
-[LOG]: INFO:	Processing: ./simple.cpp [modified]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./simple.cpp
+[LOG]: INFO:	Processing: ./simple.cpp [modified]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 200 - 200
tests/general/test_basic/test_workflow_view_second_per_file_txt_new_stdout.gold.txt

@@ -1,200 +1,200 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-836
-	Line numbers   : 1-78
-	Modified       : False
-	std.code.lines:code: 0 [+0]
-	std.code.lines:total: 0 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:4: info: Metrics per 'hmm' region
-	Region name    : hmm
-	Region type    : namespace
-	Offsets        : 2-835
-	Line numbers   : 3-77
-	Modified       : True
-	std.code.lines:code: 4 [+0]
-	std.code.lines:total: 7 [+1]
-	std.code.lines:preprocessor: 2 [+1]
-	std.code.lines:comments: 1 [+0]
-
-./simple.cpp:10: info: Metrics per 'A' region
-	Region name    : A
-	Region type    : class
-	Offsets        : 111-831
-	Line numbers   : 10-75
-	Modified       : True
-	std.code.lines:code: 4 [+0]
-	std.code.lines:total: 4 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:13: info: Metrics per 'A' region
-	Region name    : A
-	Region type    : function
-	Offsets        : 123-269
-	Line numbers   : 13-24
-	Modified       : False
-	std.code.complexity:cyclomatic: 3 [+0]
-	std.code.lines:code: 11 [+0]
-	std.code.lines:total: 12 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 2 [+0]
-
-./simple.cpp:26: info: Metrics per 'func' region
-	Region name    : func
-	Region type    : function
-	Offsets        : 272-455
-	Line numbers   : 26-42
-	Modified       : False
-	std.code.complexity:cyclomatic: 1 [+0]
-	std.code.lines:code: 5 [+0]
-	std.code.lines:total: 5 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:28: info: Metrics per 'embeded' region
-	Region name    : embeded
-	Region type    : class
-	Offsets        : 301-441
-	Line numbers   : 28-40
-	Modified       : False
-	std.code.lines:code: 3 [+0]
-	std.code.lines:total: 3 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:30: info: Metrics per 'embeded' region
-	Region name    : embeded
-	Region type    : function
-	Offsets        : 322-437
-	Line numbers   : 30-39
-	Modified       : True
-	std.code.complexity:cyclomatic: 2 [+1]
-	std.code.lines:code: 8 [+1]
-	std.code.lines:total: 9 [+1]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 2 [+1]
-
-./simple.cpp:44: info: Metrics per 'never' region
-	Region name    : never
-	Region type    : function
-	Offsets        : 458-549
-	Line numbers   : 44-51
-	Modified       : True
-	std.code.complexity:cyclomatic: 1 [+0]
-	std.code.lines:code: 7 [+0]
-	std.code.lines:total: 7 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 1 [+1]
-
-./simple.cpp:53: info: Metrics per 'new_func' region
-	Region name    : new_func
-	Region type    : function
-	Offsets        : 552-585
-	Line numbers   : 53-56
-	Modified       : None
-	std.code.complexity:cyclomatic: 0
-	std.code.lines:code: 3
-	std.code.lines:total: 4
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 1
-
-./simple.cpp:58: info: Metrics per 'new_func_complex' region
-	Region name    : new_func_complex
-	Region type    : function
-	Offsets        : 588-646
-	Line numbers   : 58-62
-	Modified       : None
-	std.code.complexity:cyclomatic: 1
-	std.code.lines:code: 5
-	std.code.lines:total: 5
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 0
-
-./simple.cpp:65: info: Metrics per 'new_func_complex_but_suppressed' region
-	Region name    : new_func_complex_but_suppressed
-	Region type    : function
-	Offsets        : 649-808
-	Line numbers   : 64-72
-	Modified       : None
-	std.code.complexity:cyclomatic: 2
-	std.suppress:count: 1
-	std.suppress:list: [std.code.complexity:cyclomatic]
-	std.code.lines:code: 8
-	std.code.lines:total: 9
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 1
-
-./simple.cpp:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 1.0 [+1.0]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+2]
-	Total          : 3.0 [+3.0]
-	Distribution   : 3 [+3] regions in total (including 1 [+1] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
-	             1 : 0.333 : 0.667 : 1 [+1]	|||||||||||||||||||||||||||||||||
-	             2 : 0.333 : 1.000 : 1 [+1]	|||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.suppress.file:count' metric
-	Average        : None [+0] (excluding zero metric values)
-	Minimum        : None [+0]
-	Maximum        : None [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./simple.cpp:: info: Overall metrics for 'std.suppress:count' metric
-	Average        : 1.0 [+1.0] (excluding zero metric values)
-	Minimum        : 1 [+1]
-	Maximum        : 1 [+1]
-	Total          : 1.0 [+1.0]
-	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 6.0 [+6.0]
-	Minimum        : 4 [+4]
-	Maximum        : 9 [+9]
-	Total          : 18.0 [+18.0]
-	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             4 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
-	             5 : 0.333 : 0.667 : 1 [+1]	|||||||||||||||||||||||||||||||||
-	             9 : 0.333 : 1.000 : 1 [+1]	|||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 5.33333333333 [+5.33333333333]
-	Minimum        : 3 [+3]
-	Maximum        : 8 [+8]
-	Total          : 16.0 [+16.0]
-	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             3 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
-	             5 : 0.333 : 0.667 : 1 [+1]	|||||||||||||||||||||||||||||||||
-	             8 : 0.333 : 1.000 : 1 [+1]	|||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.0 [+0.0]
-	Minimum        : 0 [+0]
-	Maximum        : 0 [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 1.000 : 1.000 : 3 [+3]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.666666666667 [+0.666666666667]
-	Minimum        : 0 [+0]
-	Maximum        : 1 [+1]
-	Total          : 2.0 [+2.0]
-	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
-	             1 : 0.667 : 1.000 : 2 [+2]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-836
+	Line numbers   : 1-78
+	Modified       : False
+	std.code.lines:code: 0 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 0 [+0]
+
+./simple.cpp:4: info: Metrics per 'hmm' region
+	Region name    : hmm
+	Region type    : namespace
+	Offsets        : 2-835
+	Line numbers   : 3-77
+	Modified       : True
+	std.code.lines:code: 4 [+0]
+	std.code.lines:preprocessor: 2 [+1]
+	std.code.lines:comments: 1 [+0]
+	std.code.lines:total: 7 [+1]
+
+./simple.cpp:10: info: Metrics per 'A' region
+	Region name    : A
+	Region type    : class
+	Offsets        : 111-831
+	Line numbers   : 10-75
+	Modified       : True
+	std.code.lines:code: 4 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 4 [+0]
+
+./simple.cpp:13: info: Metrics per 'A' region
+	Region name    : A
+	Region type    : function
+	Offsets        : 123-269
+	Line numbers   : 13-24
+	Modified       : False
+	std.code.complexity:cyclomatic: 3 [+0]
+	std.code.lines:code: 11 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 2 [+0]
+	std.code.lines:total: 12 [+0]
+
+./simple.cpp:26: info: Metrics per 'func' region
+	Region name    : func
+	Region type    : function
+	Offsets        : 272-455
+	Line numbers   : 26-42
+	Modified       : False
+	std.code.complexity:cyclomatic: 1 [+0]
+	std.code.lines:code: 5 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 5 [+0]
+
+./simple.cpp:28: info: Metrics per 'embeded' region
+	Region name    : embeded
+	Region type    : class
+	Offsets        : 301-441
+	Line numbers   : 28-40
+	Modified       : False
+	std.code.lines:code: 3 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 3 [+0]
+
+./simple.cpp:30: info: Metrics per 'embeded' region
+	Region name    : embeded
+	Region type    : function
+	Offsets        : 322-437
+	Line numbers   : 30-39
+	Modified       : True
+	std.code.complexity:cyclomatic: 2 [+1]
+	std.code.lines:code: 8 [+1]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 2 [+1]
+	std.code.lines:total: 9 [+1]
+
+./simple.cpp:44: info: Metrics per 'never' region
+	Region name    : never
+	Region type    : function
+	Offsets        : 458-549
+	Line numbers   : 44-51
+	Modified       : True
+	std.code.complexity:cyclomatic: 1 [+0]
+	std.code.lines:code: 7 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 1 [+1]
+	std.code.lines:total: 7 [+0]
+
+./simple.cpp:53: info: Metrics per 'new_func' region
+	Region name    : new_func
+	Region type    : function
+	Offsets        : 552-585
+	Line numbers   : 53-56
+	Modified       : None
+	std.code.complexity:cyclomatic: 0
+	std.code.lines:code: 3
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 1
+	std.code.lines:total: 4
+
+./simple.cpp:58: info: Metrics per 'new_func_complex' region
+	Region name    : new_func_complex
+	Region type    : function
+	Offsets        : 588-646
+	Line numbers   : 58-62
+	Modified       : None
+	std.code.complexity:cyclomatic: 1
+	std.code.lines:code: 5
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 0
+	std.code.lines:total: 5
+
+./simple.cpp:65: info: Metrics per 'new_func_complex_but_suppressed' region
+	Region name    : new_func_complex_but_suppressed
+	Region type    : function
+	Offsets        : 649-808
+	Line numbers   : 64-72
+	Modified       : None
+	std.code.complexity:cyclomatic: 2
+	std.code.lines:code: 8
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 1
+	std.code.lines:total: 9
+	std.suppress:count: 1
+	std.suppress:list: [std.code.complexity:cyclomatic]
+
+./simple.cpp:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 1.0 [+1.0]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+2]
+	Total          : 3.0 [+3.0]
+	Distribution   : 3 [+3] regions in total (including 1 [+1] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
+	             1 : 0.333 : 0.667 : 1 [+1]	|||||||||||||||||||||||||||||||||
+	             2 : 0.333 : 1.000 : 1 [+1]	|||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 5.3333333333 [+5.3333333333]
+	Minimum        : 3 [+3]
+	Maximum        : 8 [+8]
+	Total          : 16.0 [+16.0]
+	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             3 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
+	             5 : 0.333 : 0.667 : 1 [+1]	|||||||||||||||||||||||||||||||||
+	             8 : 0.333 : 1.000 : 1 [+1]	|||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.0 [+0.0]
+	Minimum        : 0 [+0]
+	Maximum        : 0 [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 1.000 : 1.000 : 3 [+3]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.6666666667 [+0.6666666667]
+	Minimum        : 0 [+0]
+	Maximum        : 1 [+1]
+	Total          : 2.0 [+2.0]
+	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
+	             1 : 0.667 : 1.000 : 2 [+2]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 6.0 [+6.0]
+	Minimum        : 4 [+4]
+	Maximum        : 9 [+9]
+	Total          : 18.0 [+18.0]
+	Distribution   : 3 [+3] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             4 : 0.333 : 0.333 : 1 [+1]	|||||||||||||||||||||||||||||||||
+	             5 : 0.333 : 0.667 : 1 [+1]	|||||||||||||||||||||||||||||||||
+	             9 : 0.333 : 1.000 : 1 [+1]	|||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.suppress:count' metric
+	Average        : 1.0 [+1.0] (excluding zero metric values)
+	Minimum        : 1 [+1]
+	Maximum        : 1 [+1]
+	Total          : 1.0 [+1.0]
+	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.suppress.file:count' metric
+	Average        : None [+0] (excluding zero metric values)
+	Minimum        : None [+0]
+	Maximum        : None [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+

+ 4 - 4
tests/general/test_basic/test_workflow_view_second_per_file_txt_touched_stderr.gold.txt

@@ -1,4 +1,4 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./simple.cpp
-[LOG]: INFO:	Processing: ./simple.cpp [modified]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./simple.cpp
+[LOG]: INFO:	Processing: ./simple.cpp [modified]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 209 - 209
tests/general/test_basic/test_workflow_view_second_per_file_txt_touched_stdout.gold.txt

@@ -1,209 +1,209 @@
-./simple.cpp:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-836
-	Line numbers   : 1-78
-	Modified       : False
-	std.code.lines:code: 0 [+0]
-	std.code.lines:total: 0 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:4: info: Metrics per 'hmm' region
-	Region name    : hmm
-	Region type    : namespace
-	Offsets        : 2-835
-	Line numbers   : 3-77
-	Modified       : True
-	std.code.lines:code: 4 [+0]
-	std.code.lines:total: 7 [+1]
-	std.code.lines:preprocessor: 2 [+1]
-	std.code.lines:comments: 1 [+0]
-
-./simple.cpp:10: info: Metrics per 'A' region
-	Region name    : A
-	Region type    : class
-	Offsets        : 111-831
-	Line numbers   : 10-75
-	Modified       : True
-	std.code.lines:code: 4 [+0]
-	std.code.lines:total: 4 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:13: info: Metrics per 'A' region
-	Region name    : A
-	Region type    : function
-	Offsets        : 123-269
-	Line numbers   : 13-24
-	Modified       : False
-	std.code.complexity:cyclomatic: 3 [+0]
-	std.code.lines:code: 11 [+0]
-	std.code.lines:total: 12 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 2 [+0]
-
-./simple.cpp:26: info: Metrics per 'func' region
-	Region name    : func
-	Region type    : function
-	Offsets        : 272-455
-	Line numbers   : 26-42
-	Modified       : False
-	std.code.complexity:cyclomatic: 1 [+0]
-	std.code.lines:code: 5 [+0]
-	std.code.lines:total: 5 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:28: info: Metrics per 'embeded' region
-	Region name    : embeded
-	Region type    : class
-	Offsets        : 301-441
-	Line numbers   : 28-40
-	Modified       : False
-	std.code.lines:code: 3 [+0]
-	std.code.lines:total: 3 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 0 [+0]
-
-./simple.cpp:30: info: Metrics per 'embeded' region
-	Region name    : embeded
-	Region type    : function
-	Offsets        : 322-437
-	Line numbers   : 30-39
-	Modified       : True
-	std.code.complexity:cyclomatic: 2 [+1]
-	std.code.lines:code: 8 [+1]
-	std.code.lines:total: 9 [+1]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 2 [+1]
-
-./simple.cpp:44: info: Metrics per 'never' region
-	Region name    : never
-	Region type    : function
-	Offsets        : 458-549
-	Line numbers   : 44-51
-	Modified       : True
-	std.code.complexity:cyclomatic: 1 [+0]
-	std.code.lines:code: 7 [+0]
-	std.code.lines:total: 7 [+0]
-	std.code.lines:preprocessor: 0 [+0]
-	std.code.lines:comments: 1 [+1]
-
-./simple.cpp:53: info: Metrics per 'new_func' region
-	Region name    : new_func
-	Region type    : function
-	Offsets        : 552-585
-	Line numbers   : 53-56
-	Modified       : None
-	std.code.complexity:cyclomatic: 0
-	std.code.lines:code: 3
-	std.code.lines:total: 4
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 1
-
-./simple.cpp:58: info: Metrics per 'new_func_complex' region
-	Region name    : new_func_complex
-	Region type    : function
-	Offsets        : 588-646
-	Line numbers   : 58-62
-	Modified       : None
-	std.code.complexity:cyclomatic: 1
-	std.code.lines:code: 5
-	std.code.lines:total: 5
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 0
-
-./simple.cpp:65: info: Metrics per 'new_func_complex_but_suppressed' region
-	Region name    : new_func_complex_but_suppressed
-	Region type    : function
-	Offsets        : 649-808
-	Line numbers   : 64-72
-	Modified       : None
-	std.code.complexity:cyclomatic: 2
-	std.suppress:count: 1
-	std.suppress:list: [std.code.complexity:cyclomatic]
-	std.code.lines:code: 8
-	std.code.lines:total: 9
-	std.code.lines:preprocessor: 0
-	std.code.lines:comments: 1
-
-./simple.cpp:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 1.2 [-0.05]
-	Minimum        : 0 [-1]
-	Maximum        : 2 [+0]
-	Total          : 6.0 [+1.0]
-	Distribution   : 5 [+1] regions in total (including 1 [+1] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.200 : 0.200 : 1 [+1]	||||||||||||||||||||
-	             1 : 0.400 : 0.600 : 2 [-1]	||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.400 : 1.000 : 2 [+1]	||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.suppress.file:count' metric
-	Average        : None [+0] (excluding zero metric values)
-	Minimum        : None [+0]
-	Maximum        : None [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./simple.cpp:: info: Overall metrics for 'std.suppress:count' metric
-	Average        : 1.0 [+1.0] (excluding zero metric values)
-	Minimum        : 1 [+1]
-	Maximum        : 1 [+1]
-	Total          : 1.0 [+1.0]
-	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 6.42857142857 [+0.571428571429]
-	Minimum        : 4 [+1]
-	Maximum        : 9 [+1]
-	Total          : 45.0 [+4.0]
-	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             3 : 0.000 : 0.000 : 0 [-1]	
-	             4 : 0.286 : 0.286 : 2 [+1]	|||||||||||||||||||||||||||||
-	             5 : 0.143 : 0.429 : 1 [+0]	||||||||||||||
-	             6 : 0.000 : 0.429 : 0 [-1]	
-	             7 : 0.286 : 0.714 : 2 [+1]	|||||||||||||||||||||||||||||
-	             8 : 0.000 : 0.714 : 0 [-2]	
-	             9 : 0.286 : 1.000 : 2 [+2]	|||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 5.57142857143 [+0.285714285714]
-	Minimum        : 3 [+0]
-	Maximum        : 8 [+1]
-	Total          : 39.0 [+2.0]
-	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             3 : 0.143 : 0.143 : 1 [+0]	||||||||||||||
-	             4 : 0.286 : 0.429 : 2 [+0]	|||||||||||||||||||||||||||||
-	             5 : 0.143 : 0.571 : 1 [+0]	||||||||||||||
-	             7 : 0.143 : 0.714 : 1 [-2]	||||||||||||||
-	             8 : 0.286 : 1.000 : 2 [+2]	|||||||||||||||||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.285714285714 [+0.142857142857]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+1]
-	Total          : 2.0 [+1.0]
-	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.857 : 0.857 : 6 [+0]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.000 : 0.857 : 0 [-1]	
-	             2 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
-
-./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.857142857143 [+0.428571428571]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+1]
-	Total          : 6.0 [+3.0]
-	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.286 : 0.286 : 2 [-2]	|||||||||||||||||||||||||||||
-	             1 : 0.571 : 0.857 : 4 [+1]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
-
-
+./simple.cpp:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-836
+	Line numbers   : 1-78
+	Modified       : False
+	std.code.lines:code: 0 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 0 [+0]
+
+./simple.cpp:4: info: Metrics per 'hmm' region
+	Region name    : hmm
+	Region type    : namespace
+	Offsets        : 2-835
+	Line numbers   : 3-77
+	Modified       : True
+	std.code.lines:code: 4 [+0]
+	std.code.lines:preprocessor: 2 [+1]
+	std.code.lines:comments: 1 [+0]
+	std.code.lines:total: 7 [+1]
+
+./simple.cpp:10: info: Metrics per 'A' region
+	Region name    : A
+	Region type    : class
+	Offsets        : 111-831
+	Line numbers   : 10-75
+	Modified       : True
+	std.code.lines:code: 4 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 4 [+0]
+
+./simple.cpp:13: info: Metrics per 'A' region
+	Region name    : A
+	Region type    : function
+	Offsets        : 123-269
+	Line numbers   : 13-24
+	Modified       : False
+	std.code.complexity:cyclomatic: 3 [+0]
+	std.code.lines:code: 11 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 2 [+0]
+	std.code.lines:total: 12 [+0]
+
+./simple.cpp:26: info: Metrics per 'func' region
+	Region name    : func
+	Region type    : function
+	Offsets        : 272-455
+	Line numbers   : 26-42
+	Modified       : False
+	std.code.complexity:cyclomatic: 1 [+0]
+	std.code.lines:code: 5 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 5 [+0]
+
+./simple.cpp:28: info: Metrics per 'embeded' region
+	Region name    : embeded
+	Region type    : class
+	Offsets        : 301-441
+	Line numbers   : 28-40
+	Modified       : False
+	std.code.lines:code: 3 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 0 [+0]
+	std.code.lines:total: 3 [+0]
+
+./simple.cpp:30: info: Metrics per 'embeded' region
+	Region name    : embeded
+	Region type    : function
+	Offsets        : 322-437
+	Line numbers   : 30-39
+	Modified       : True
+	std.code.complexity:cyclomatic: 2 [+1]
+	std.code.lines:code: 8 [+1]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 2 [+1]
+	std.code.lines:total: 9 [+1]
+
+./simple.cpp:44: info: Metrics per 'never' region
+	Region name    : never
+	Region type    : function
+	Offsets        : 458-549
+	Line numbers   : 44-51
+	Modified       : True
+	std.code.complexity:cyclomatic: 1 [+0]
+	std.code.lines:code: 7 [+0]
+	std.code.lines:preprocessor: 0 [+0]
+	std.code.lines:comments: 1 [+1]
+	std.code.lines:total: 7 [+0]
+
+./simple.cpp:53: info: Metrics per 'new_func' region
+	Region name    : new_func
+	Region type    : function
+	Offsets        : 552-585
+	Line numbers   : 53-56
+	Modified       : None
+	std.code.complexity:cyclomatic: 0
+	std.code.lines:code: 3
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 1
+	std.code.lines:total: 4
+
+./simple.cpp:58: info: Metrics per 'new_func_complex' region
+	Region name    : new_func_complex
+	Region type    : function
+	Offsets        : 588-646
+	Line numbers   : 58-62
+	Modified       : None
+	std.code.complexity:cyclomatic: 1
+	std.code.lines:code: 5
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 0
+	std.code.lines:total: 5
+
+./simple.cpp:65: info: Metrics per 'new_func_complex_but_suppressed' region
+	Region name    : new_func_complex_but_suppressed
+	Region type    : function
+	Offsets        : 649-808
+	Line numbers   : 64-72
+	Modified       : None
+	std.code.complexity:cyclomatic: 2
+	std.code.lines:code: 8
+	std.code.lines:preprocessor: 0
+	std.code.lines:comments: 1
+	std.code.lines:total: 9
+	std.suppress:count: 1
+	std.suppress:list: [std.code.complexity:cyclomatic]
+
+./simple.cpp:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 1.2 [-0.05]
+	Minimum        : 0 [-1]
+	Maximum        : 2 [+0]
+	Total          : 6.0 [+1.0]
+	Distribution   : 5 [+1] regions in total (including 1 [+1] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.200 : 0.200 : 1 [+1]	||||||||||||||||||||
+	             1 : 0.400 : 0.600 : 2 [-1]	||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.400 : 1.000 : 2 [+1]	||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 5.5714285714 [+0.2857142857]
+	Minimum        : 3 [+0]
+	Maximum        : 8 [+1]
+	Total          : 39.0 [+2.0]
+	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             3 : 0.143 : 0.143 : 1 [+0]	||||||||||||||
+	             4 : 0.286 : 0.429 : 2 [+0]	|||||||||||||||||||||||||||||
+	             5 : 0.143 : 0.571 : 1 [+0]	||||||||||||||
+	             7 : 0.143 : 0.714 : 1 [-2]	||||||||||||||
+	             8 : 0.286 : 1.000 : 2 [+2]	|||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.2857142857 [+0.1428571429]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+1]
+	Total          : 2.0 [+1.0]
+	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.857 : 0.857 : 6 [+0]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.000 : 0.857 : 0 [-1]	
+	             2 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.8571428571 [+0.4285714286]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+1]
+	Total          : 6.0 [+3.0]
+	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.286 : 0.286 : 2 [-2]	|||||||||||||||||||||||||||||
+	             1 : 0.571 : 0.857 : 4 [+1]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 6.4285714286 [+0.5714285714]
+	Minimum        : 4 [+1]
+	Maximum        : 9 [+1]
+	Total          : 45.0 [+4.0]
+	Distribution   : 7 [+0] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             3 : 0.000 : 0.000 : 0 [-1]	
+	             4 : 0.286 : 0.286 : 2 [+1]	|||||||||||||||||||||||||||||
+	             5 : 0.143 : 0.429 : 1 [+0]	||||||||||||||
+	             6 : 0.000 : 0.429 : 0 [-1]	
+	             7 : 0.286 : 0.714 : 2 [+1]	|||||||||||||||||||||||||||||
+	             8 : 0.000 : 0.714 : 0 [-2]	
+	             9 : 0.286 : 1.000 : 2 [+2]	|||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.suppress:count' metric
+	Average        : 1.0 [+1.0] (excluding zero metric values)
+	Minimum        : 1 [+1]
+	Maximum        : 1 [+1]
+	Total          : 1.0 [+1.0]
+	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./simple.cpp:: info: Overall metrics for 'std.suppress.file:count' metric
+	Average        : None [+0] (excluding zero metric values)
+	Minimum        : None [+0]
+	Maximum        : None [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+

+ 3 - 3
tests/general/test_basic/test_workflow_view_second_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 87 - 87
tests/general/test_basic/test_workflow_view_second_stdout.gold.txt

@@ -1,87 +1,87 @@
-<view>
-
-    <data>
-        <info id="1" path="./" />
-        <file-data />
-        <subfiles>
-            <subfile>file_deleted_in_new_sources.cpp</subfile>
-            <subfile>simple2.cpp</subfile>
-            <subfile>simple.cpp</subfile>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="1.625" count="8" max="3" min="0" nonzero="False" sup="1" total="13.0">
-                    <__diff__ avg="0.25" count="0" max="0" min="-1" nonzero="0" sup="1" total="2.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.125" />
-                        <distribution-bar __diff__="-3" count="3" metric="1" ratio="0.375" />
-                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.25" />
-                        <distribution-bar __diff__="1" count="2" metric="3" ratio="0.25" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-            <std.suppress.file>
-                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
-                    <__diff__ avg="0" count="0" max="0" min="0" nonzero="0" sup="0" total="0.0" />
-                    <distribution-bars>
-                    </distribution-bars>
-                </count>
-            </std.suppress.file>
-            <std.suppress>
-                <count avg="1.0" count="1" max="1" min="1" nonzero="True" sup="0" total="1.0">
-                    <__diff__ avg="1.0" count="1" max="1" min="1" nonzero="0" sup="0" total="1.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="1" count="1" metric="1" ratio="1.0" />
-                    </distribution-bars>
-                </count>
-            </std.suppress>
-            <std.code.lines>
-                <total avg="5.66666666667" count="15" max="12" min="0" nonzero="False" sup="0" total="85.0">
-                    <__diff__ avg="0.229166666667" count="-1" max="0" min="0" nonzero="0" sup="0" total="-2.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="0" count="2" metric="0" ratio="0.133333333333" />
-                        <distribution-bar __diff__="-1" count="2" metric="3" ratio="0.133333333333" />
-                        <distribution-bar __diff__="1" count="2" metric="4" ratio="0.133333333333" />
-                        <distribution-bar __diff__="1" count="3" metric="5" ratio="0.2" />
-                        <distribution-bar __diff__="-1" count="0" metric="6" ratio="0" />
-                        <distribution-bar __diff__="-1" count="2" metric="7" ratio="0.133333333333" />
-                        <distribution-bar __diff__="-2" count="0" metric="8" ratio="0" />
-                        <distribution-bar __diff__="1" count="2" metric="9" ratio="0.133333333333" />
-                        <distribution-bar __diff__="1" count="2" metric="12" ratio="0.133333333333" />
-                    </distribution-bars>
-                </total>
-                <code avg="5.0" count="15" max="11" min="0" nonzero="False" sup="0" total="75.0">
-                    <__diff__ avg="0.125" count="-1" max="0" min="0" nonzero="0" sup="0" total="-3.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="0" count="2" metric="0" ratio="0.133333333333" />
-                        <distribution-bar __diff__="0" count="3" metric="3" ratio="0.2" />
-                        <distribution-bar __diff__="0" count="3" metric="4" ratio="0.2" />
-                        <distribution-bar __diff__="0" count="2" metric="5" ratio="0.133333333333" />
-                        <distribution-bar __diff__="-3" count="1" metric="7" ratio="0.0666666666667" />
-                        <distribution-bar __diff__="1" count="2" metric="8" ratio="0.133333333333" />
-                        <distribution-bar __diff__="1" count="1" metric="10" ratio="0.0666666666667" />
-                        <distribution-bar __diff__="0" count="1" metric="11" ratio="0.0666666666667" />
-                    </distribution-bars>
-                </code>
-                <preprocessor avg="0.133333333333" count="15" max="2" min="0" nonzero="False" sup="0" total="2.0">
-                    <__diff__ avg="0.0708333333333" count="-1" max="1" min="0" nonzero="0" sup="0" total="1.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="-1" count="14" metric="0" ratio="0.933333333333" />
-                        <distribution-bar __diff__="-1" count="0" metric="1" ratio="0" />
-                        <distribution-bar __diff__="1" count="1" metric="2" ratio="0.0666666666667" />
-                    </distribution-bars>
-                </preprocessor>
-                <comments avg="0.733333333333" count="15" max="2" min="0" nonzero="False" sup="0" total="11.0">
-                    <__diff__ avg="0.108333333333" count="-1" max="-1" min="0" nonzero="0" sup="0" total="1.0" />
-                    <distribution-bars>
-                        <distribution-bar __diff__="-3" count="7" metric="0" ratio="0.466666666667" />
-                        <distribution-bar __diff__="2" count="5" metric="1" ratio="0.333333333333" />
-                        <distribution-bar __diff__="1" count="3" metric="2" ratio="0.2" />
-                    </distribution-bars>
-                </comments>
-            </std.code.lines>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="1.625" count="8" max="3" min="0" nonzero="False" sup="1" total="13.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="1" count="1" metric="0" ratio="0.125" />
+                        <distribution-bar __diff__="-3" count="3" metric="1" ratio="0.375" />
+                        <distribution-bar __diff__="1" count="2" metric="2" ratio="0.25" />
+                        <distribution-bar __diff__="1" count="2" metric="3" ratio="0.25" />
+                    </distribution-bars>
+                    <__diff__ avg="0.25" count="0" max="0" min="-1" nonzero="0" sup="1" total="2.0" />
+                </cyclomatic>
+            </std.code.complexity>
+            <std.code.lines>
+                <code avg="5.0" count="15" max="11" min="0" nonzero="False" sup="0" total="75.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="0" count="2" metric="0" ratio="0.1333333333" />
+                        <distribution-bar __diff__="0" count="3" metric="3" ratio="0.2" />
+                        <distribution-bar __diff__="0" count="3" metric="4" ratio="0.2" />
+                        <distribution-bar __diff__="0" count="2" metric="5" ratio="0.1333333333" />
+                        <distribution-bar __diff__="-3" count="1" metric="7" ratio="0.0666666667" />
+                        <distribution-bar __diff__="1" count="2" metric="8" ratio="0.1333333333" />
+                        <distribution-bar __diff__="1" count="1" metric="10" ratio="0.0666666667" />
+                        <distribution-bar __diff__="0" count="1" metric="11" ratio="0.0666666667" />
+                    </distribution-bars>
+                    <__diff__ avg="0.125" count="-1" max="0" min="0" nonzero="0" sup="0" total="-3.0" />
+                </code>
+                <preprocessor avg="0.1333333333" count="15" max="2" min="0" nonzero="False" sup="0" total="2.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="-1" count="14" metric="0" ratio="0.9333333333" />
+                        <distribution-bar __diff__="-1" count="0" metric="1" ratio="0" />
+                        <distribution-bar __diff__="1" count="1" metric="2" ratio="0.0666666667" />
+                    </distribution-bars>
+                    <__diff__ avg="0.0708333333" count="-1" max="1" min="0" nonzero="0" sup="0" total="1.0" />
+                </preprocessor>
+                <comments avg="0.7333333333" count="15" max="2" min="0" nonzero="False" sup="0" total="11.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="-3" count="7" metric="0" ratio="0.4666666667" />
+                        <distribution-bar __diff__="2" count="5" metric="1" ratio="0.3333333333" />
+                        <distribution-bar __diff__="1" count="3" metric="2" ratio="0.2" />
+                    </distribution-bars>
+                    <__diff__ avg="0.1083333333" count="-1" max="-1" min="0" nonzero="0" sup="0" total="1.0" />
+                </comments>
+                <total avg="5.6666666667" count="15" max="12" min="0" nonzero="False" sup="0" total="85.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="0" count="2" metric="0" ratio="0.1333333333" />
+                        <distribution-bar __diff__="-1" count="2" metric="3" ratio="0.1333333333" />
+                        <distribution-bar __diff__="1" count="2" metric="4" ratio="0.1333333333" />
+                        <distribution-bar __diff__="1" count="3" metric="5" ratio="0.2" />
+                        <distribution-bar __diff__="-1" count="0" metric="6" ratio="0" />
+                        <distribution-bar __diff__="-1" count="2" metric="7" ratio="0.1333333333" />
+                        <distribution-bar __diff__="-2" count="0" metric="8" ratio="0" />
+                        <distribution-bar __diff__="1" count="2" metric="9" ratio="0.1333333333" />
+                        <distribution-bar __diff__="1" count="2" metric="12" ratio="0.1333333333" />
+                    </distribution-bars>
+                    <__diff__ avg="0.2291666667" count="-1" max="0" min="0" nonzero="0" sup="0" total="-2.0" />
+                </total>
+            </std.code.lines>
+            <std.suppress>
+                <count avg="1.0" count="1" max="1" min="1" nonzero="True" sup="0" total="1.0">
+                    <distribution-bars>
+                        <distribution-bar __diff__="1" count="1" metric="1" ratio="1.0" />
+                    </distribution-bars>
+                    <__diff__ avg="1.0" count="1" max="1" min="1" nonzero="0" sup="0" total="1.0" />
+                </count>
+            </std.suppress>
+            <std.suppress.file>
+                <count avg="None" count="0" max="None" min="None" nonzero="True" sup="0" total="0.0">
+                    <distribution-bars>
+                    </distribution-bars>
+                    <__diff__ avg="0" count="0" max="0" min="0" nonzero="0" sup="0" total="0.0" />
+                </count>
+            </std.suppress.file>
+        </aggregated-data>
+        <file-data />
+        <subdirs>
+        </subdirs>
+        <subfiles>
+            <subfile>file_deleted_in_new_sources.cpp</subfile>
+            <subfile>simple.cpp</subfile>
+            <subfile>simple2.cpp</subfile>
+        </subfiles>
+    </data>
+</view>

+ 3 - 3
tests/general/test_basic/test_workflow_view_second_txt_all_stderr.gold.txt

@@ -1,3 +1,3 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 90 - 90
tests/general/test_basic/test_workflow_view_second_txt_all_stdout.gold.txt

@@ -1,90 +1,90 @@
-./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 1.625 [+0.25]
-	Minimum        : 0 [-1]
-	Maximum        : 3 [+0]
-	Total          : 13.0 [+2.0]
-	Distribution   : 8 [+0] regions in total (including 1 [+1] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.125 : 0.125 : 1 [+1]	|||||||||||||
-	             1 : 0.375 : 0.500 : 3 [-3]	||||||||||||||||||||||||||||||||||||||
-	             2 : 0.250 : 0.750 : 2 [+1]	|||||||||||||||||||||||||
-	             3 : 0.250 : 1.000 : 2 [+1]	|||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.suppress.file:count' metric
-	Average        : None [+0] (excluding zero metric values)
-	Minimum        : None [+0]
-	Maximum        : None [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./:: info: Overall metrics for 'std.suppress:count' metric
-	Average        : 1.0 [+1.0] (excluding zero metric values)
-	Minimum        : 1 [+1]
-	Maximum        : 1 [+1]
-	Total          : 1.0 [+1.0]
-	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 5.66666666667 [+0.229166666667]
-	Minimum        : 0 [+0]
-	Maximum        : 12 [+0]
-	Total          : 85.0 [-2.0]
-	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.133 : 0.133 :  2 [+0 ]	|||||||||||||
-	             3 : 0.133 : 0.267 :  2 [-1 ]	|||||||||||||
-	             4 : 0.133 : 0.400 :  2 [+1 ]	|||||||||||||
-	             5 : 0.200 : 0.600 :  3 [+1 ]	||||||||||||||||||||
-	             6 : 0.000 : 0.600 :  0 [-1 ]	
-	             7 : 0.133 : 0.733 :  2 [-1 ]	|||||||||||||
-	             8 : 0.000 : 0.733 :  0 [-2 ]	
-	             9 : 0.133 : 0.867 :  2 [+1 ]	|||||||||||||
-	            12 : 0.133 : 1.000 :  2 [+1 ]	|||||||||||||
-
-./:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 5.0 [+0.125]
-	Minimum        : 0 [+0]
-	Maximum        : 11 [+0]
-	Total          : 75.0 [-3.0]
-	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.133 : 0.133 :  2 [+0 ]	|||||||||||||
-	             3 : 0.200 : 0.333 :  3 [+0 ]	||||||||||||||||||||
-	             4 : 0.200 : 0.533 :  3 [+0 ]	||||||||||||||||||||
-	             5 : 0.133 : 0.667 :  2 [+0 ]	|||||||||||||
-	             7 : 0.067 : 0.733 :  1 [-3 ]	|||||||
-	             8 : 0.133 : 0.867 :  2 [+1 ]	|||||||||||||
-	            10 : 0.067 : 0.933 :  1 [+1 ]	|||||||
-	            11 : 0.067 : 1.000 :  1 [+0 ]	|||||||
-
-./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.133333333333 [+0.0708333333333]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+1]
-	Total          : 2.0 [+1.0]
-	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.933 : 0.933 : 14 [-1 ]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.000 : 0.933 :  0 [-1 ]	
-	             2 : 0.067 : 1.000 :  1 [+1 ]	|||||||
-
-./:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.733333333333 [+0.108333333333]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [-1]
-	Total          : 11.0 [+1.0]
-	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.467 : 0.467 :  7 [-3 ]	|||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.333 : 0.800 :  5 [+2 ]	|||||||||||||||||||||||||||||||||
-	             2 : 0.200 : 1.000 :  3 [+1 ]	||||||||||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple2.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 1.625 [+0.25]
+	Minimum        : 0 [-1]
+	Maximum        : 3 [+0]
+	Total          : 13.0 [+2.0]
+	Distribution   : 8 [+0] regions in total (including 1 [+1] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.125 : 0.125 : 1 [+1]	||||||||||||
+	             1 : 0.375 : 0.500 : 3 [-3]	||||||||||||||||||||||||||||||||||||||
+	             2 : 0.250 : 0.750 : 2 [+1]	|||||||||||||||||||||||||
+	             3 : 0.250 : 1.000 : 2 [+1]	|||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 5.0 [+0.125]
+	Minimum        : 0 [+0]
+	Maximum        : 11 [+0]
+	Total          : 75.0 [-3.0]
+	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.133 : 0.133 :  2 [+0 ]	|||||||||||||
+	             3 : 0.200 : 0.333 :  3 [+0 ]	||||||||||||||||||||
+	             4 : 0.200 : 0.533 :  3 [+0 ]	||||||||||||||||||||
+	             5 : 0.133 : 0.667 :  2 [+0 ]	|||||||||||||
+	             7 : 0.067 : 0.733 :  1 [-3 ]	|||||||
+	             8 : 0.133 : 0.867 :  2 [+1 ]	|||||||||||||
+	            10 : 0.067 : 0.933 :  1 [+1 ]	|||||||
+	            11 : 0.067 : 1.000 :  1 [+0 ]	|||||||
+
+./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.1333333333 [+0.0708333333]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+1]
+	Total          : 2.0 [+1.0]
+	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.933 : 0.933 : 14 [-1 ]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.000 : 0.933 :  0 [-1 ]	
+	             2 : 0.067 : 1.000 :  1 [+1 ]	|||||||
+
+./:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.7333333333 [+0.1083333333]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [-1]
+	Total          : 11.0 [+1.0]
+	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.467 : 0.467 :  7 [-3 ]	|||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.333 : 0.800 :  5 [+2 ]	|||||||||||||||||||||||||||||||||
+	             2 : 0.200 : 1.000 :  3 [+1 ]	||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 5.6666666667 [+0.2291666667]
+	Minimum        : 0 [+0]
+	Maximum        : 12 [+0]
+	Total          : 85.0 [-2.0]
+	Distribution   : 15 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.133 : 0.133 :  2 [+0 ]	|||||||||||||
+	             3 : 0.133 : 0.267 :  2 [-1 ]	|||||||||||||
+	             4 : 0.133 : 0.400 :  2 [+1 ]	|||||||||||||
+	             5 : 0.200 : 0.600 :  3 [+1 ]	||||||||||||||||||||
+	             6 : 0.000 : 0.600 :  0 [-1 ]	
+	             7 : 0.133 : 0.733 :  2 [-1 ]	|||||||||||||
+	             8 : 0.000 : 0.733 :  0 [-2 ]	
+	             9 : 0.133 : 0.867 :  2 [+1 ]	|||||||||||||
+	            12 : 0.133 : 1.000 :  2 [+1 ]	|||||||||||||
+
+./:: info: Overall metrics for 'std.suppress:count' metric
+	Average        : 1.0 [+1.0] (excluding zero metric values)
+	Minimum        : 1 [+1]
+	Maximum        : 1 [+1]
+	Total          : 1.0 [+1.0]
+	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.suppress.file:count' metric
+	Average        : None [+0] (excluding zero metric values)
+	Minimum        : None [+0]
+	Maximum        : None [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+	File           : simple2.cpp
+
+

+ 5 - 5
tests/general/test_basic/test_workflow_view_second_txt_new_stderr.gold.txt

@@ -1,5 +1,5 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Processing: ./simple.cpp [modified]
-[LOG]: INFO:	Processing: ./simple2.cpp [new]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Processing: ./simple.cpp [modified]
+[LOG]: INFO:	Processing: ./simple2.cpp [new]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 83 - 83
tests/general/test_basic/test_workflow_view_second_txt_new_stdout.gold.txt

@@ -1,83 +1,83 @@
-./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 1.5 [+1.5]
-	Minimum        : 0 [+0]
-	Maximum        : 3 [+3]
-	Total          : 6.0 [+6.0]
-	Distribution   : 4 [+4] regions in total (including 1 [+1] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.250 : 0.250 : 1 [+1]	|||||||||||||||||||||||||
-	             1 : 0.250 : 0.500 : 1 [+1]	|||||||||||||||||||||||||
-	             2 : 0.250 : 0.750 : 1 [+1]	|||||||||||||||||||||||||
-	             3 : 0.250 : 1.000 : 1 [+1]	|||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.suppress.file:count' metric
-	Average        : None [+0] (excluding zero metric values)
-	Minimum        : None [+0]
-	Maximum        : None [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./:: info: Overall metrics for 'std.suppress:count' metric
-	Average        : 1.0 [+1.0] (excluding zero metric values)
-	Minimum        : 1 [+1]
-	Maximum        : 1 [+1]
-	Total          : 1.0 [+1.0]
-	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 5.42857142857 [+5.42857142857]
-	Minimum        : 0 [+0]
-	Maximum        : 12 [+12]
-	Total          : 38.0 [+38.0]
-	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.143 : 0.143 : 1 [+1]	||||||||||||||
-	             3 : 0.143 : 0.286 : 1 [+1]	||||||||||||||
-	             4 : 0.143 : 0.429 : 1 [+1]	||||||||||||||
-	             5 : 0.286 : 0.714 : 2 [+2]	|||||||||||||||||||||||||||||
-	             9 : 0.143 : 0.857 : 1 [+1]	||||||||||||||
-	            12 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
-
-./:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 4.71428571429 [+4.71428571429]
-	Minimum        : 0 [+0]
-	Maximum        : 10 [+10]
-	Total          : 33.0 [+33.0]
-	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.143 : 0.143 : 1 [+1]	||||||||||||||
-	             3 : 0.286 : 0.429 : 2 [+2]	|||||||||||||||||||||||||||||
-	             4 : 0.143 : 0.571 : 1 [+1]	||||||||||||||
-	             5 : 0.143 : 0.714 : 1 [+1]	||||||||||||||
-	             8 : 0.143 : 0.857 : 1 [+1]	||||||||||||||
-	            10 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
-
-./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.0 [+0.0]
-	Minimum        : 0 [+0]
-	Maximum        : 0 [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 1.000 : 1.000 : 7 [+7]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.714285714286 [+0.714285714286]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+2]
-	Total          : 5.0 [+5.0]
-	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.429 : 0.429 : 3 [+3]	|||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.429 : 0.857 : 3 [+3]	|||||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple2.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 1.5 [+1.5]
+	Minimum        : 0 [+0]
+	Maximum        : 3 [+3]
+	Total          : 6.0 [+6.0]
+	Distribution   : 4 [+4] regions in total (including 1 [+1] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.250 : 0.250 : 1 [+1]	|||||||||||||||||||||||||
+	             1 : 0.250 : 0.500 : 1 [+1]	|||||||||||||||||||||||||
+	             2 : 0.250 : 0.750 : 1 [+1]	|||||||||||||||||||||||||
+	             3 : 0.250 : 1.000 : 1 [+1]	|||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 4.7142857143 [+4.7142857143]
+	Minimum        : 0 [+0]
+	Maximum        : 10 [+10]
+	Total          : 33.0 [+33.0]
+	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.143 : 0.143 : 1 [+1]	||||||||||||||
+	             3 : 0.286 : 0.429 : 2 [+2]	|||||||||||||||||||||||||||||
+	             4 : 0.143 : 0.571 : 1 [+1]	||||||||||||||
+	             5 : 0.143 : 0.714 : 1 [+1]	||||||||||||||
+	             8 : 0.143 : 0.857 : 1 [+1]	||||||||||||||
+	            10 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.0 [+0.0]
+	Minimum        : 0 [+0]
+	Maximum        : 0 [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 1.000 : 1.000 : 7 [+7]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.7142857143 [+0.7142857143]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+2]
+	Total          : 5.0 [+5.0]
+	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.429 : 0.429 : 3 [+3]	|||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.429 : 0.857 : 3 [+3]	|||||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 5.4285714286 [+5.4285714286]
+	Minimum        : 0 [+0]
+	Maximum        : 12 [+12]
+	Total          : 38.0 [+38.0]
+	Distribution   : 7 [+7] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.143 : 0.143 : 1 [+1]	||||||||||||||
+	             3 : 0.143 : 0.286 : 1 [+1]	||||||||||||||
+	             4 : 0.143 : 0.429 : 1 [+1]	||||||||||||||
+	             5 : 0.286 : 0.714 : 2 [+2]	|||||||||||||||||||||||||||||
+	             9 : 0.143 : 0.857 : 1 [+1]	||||||||||||||
+	            12 : 0.143 : 1.000 : 1 [+1]	||||||||||||||
+
+./:: info: Overall metrics for 'std.suppress:count' metric
+	Average        : 1.0 [+1.0] (excluding zero metric values)
+	Minimum        : 1 [+1]
+	Maximum        : 1 [+1]
+	Total          : 1.0 [+1.0]
+	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.suppress.file:count' metric
+	Average        : None [+0] (excluding zero metric values)
+	Minimum        : None [+0]
+	Maximum        : None [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+	File           : simple2.cpp
+
+

+ 6 - 6
tests/general/test_basic/test_workflow_view_second_txt_touched_stderr.gold.txt

@@ -1,6 +1,6 @@
-[LOG]: WARNING:	Logging enabled with INFO level
-[LOG]: INFO:	Processing: ./
-[LOG]: INFO:	Processing: ./simple.cpp [modified]
-[LOG]: INFO:	Processing: ./simple2.cpp [new]
-[LOG]: INFO:	Processing: ./file_deleted_in_new_sources.cpp [deleted]
-[LOG]: WARNING:	Done (1 seconds). Exit code: 0
+[LOG]: WARNING:	Logging enabled with INFO level
+[LOG]: INFO:	Processing: ./
+[LOG]: INFO:	Processing: ./simple.cpp [modified]
+[LOG]: INFO:	Processing: ./simple2.cpp [new]
+[LOG]: INFO:	Processing: ./file_deleted_in_new_sources.cpp [deleted]
+[LOG]: WARNING:	Done (1 seconds). Exit code: 0

+ 89 - 89
tests/general/test_basic/test_workflow_view_second_txt_touched_stdout.gold.txt

@@ -1,89 +1,89 @@
-./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 1.5 [+0.333333333333]
-	Minimum        : 0 [-1]
-	Maximum        : 3 [+1]
-	Total          : 9.0 [+2.0]
-	Distribution   : 6 [+0] regions in total (including 1 [+1] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.167 : 0.167 : 1 [+1]	|||||||||||||||||
-	             1 : 0.333 : 0.500 : 2 [-3]	|||||||||||||||||||||||||||||||||
-	             2 : 0.333 : 0.833 : 2 [+1]	|||||||||||||||||||||||||||||||||
-	             3 : 0.167 : 1.000 : 1 [+1]	|||||||||||||||||
-
-./:: info: Overall metrics for 'std.suppress.file:count' metric
-	Average        : None [+0] (excluding zero metric values)
-	Minimum        : None [+0]
-	Maximum        : None [+0]
-	Total          : 0.0 [+0.0]
-	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of files
-
-./:: info: Overall metrics for 'std.suppress:count' metric
-	Average        : 1.0 [+1.0] (excluding zero metric values)
-	Minimum        : 1 [+1]
-	Maximum        : 1 [+1]
-	Total          : 1.0 [+1.0]
-	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-./:: info: Overall metrics for 'std.code.lines:total' metric
-	Average        : 5.90909090909 [+0.325757575758]
-	Minimum        : 0 [+0]
-	Maximum        : 12 [+3]
-	Total          : 65.0 [-2.0]
-	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
-	             3 : 0.091 : 0.182 :  1 [-1 ]	|||||||||
-	             4 : 0.182 : 0.364 :  2 [+1 ]	||||||||||||||||||
-	             5 : 0.182 : 0.545 :  2 [+1 ]	||||||||||||||||||
-	             6 : 0.000 : 0.545 :  0 [-1 ]	
-	             7 : 0.182 : 0.727 :  2 [-1 ]	||||||||||||||||||
-	             8 : 0.000 : 0.727 :  0 [-2 ]	
-	             9 : 0.182 : 0.909 :  2 [+1 ]	||||||||||||||||||
-	            12 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
-
-./:: info: Overall metrics for 'std.code.lines:code' metric
-	Average        : 5.09090909091 [+0.174242424242]
-	Minimum        : 0 [+0]
-	Maximum        : 10 [+2]
-	Total          : 56.0 [-3.0]
-	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
-	             3 : 0.182 : 0.273 :  2 [+0 ]	||||||||||||||||||
-	             4 : 0.273 : 0.545 :  3 [+0 ]	|||||||||||||||||||||||||||
-	             5 : 0.091 : 0.636 :  1 [+0 ]	|||||||||
-	             7 : 0.091 : 0.727 :  1 [-3 ]	|||||||||
-	             8 : 0.182 : 0.909 :  2 [+1 ]	||||||||||||||||||
-	            10 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
-
-./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
-	Average        : 0.181818181818 [+0.0984848484848]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [+1]
-	Total          : 2.0 [+1.0]
-	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.909 : 0.909 : 10 [-1 ]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.000 : 0.909 :  0 [-1 ]	
-	             2 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
-
-./:: info: Overall metrics for 'std.code.lines:comments' metric
-	Average        : 0.818181818182 [+0.151515151515]
-	Minimum        : 0 [+0]
-	Maximum        : 2 [-1]
-	Total          : 9.0 [+1.0]
-	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.364 : 0.364 :  4 [-3 ]	||||||||||||||||||||||||||||||||||||
-	             1 : 0.455 : 0.818 :  5 [+2 ]	|||||||||||||||||||||||||||||||||||||||||||||
-	             2 : 0.182 : 1.000 :  2 [+1 ]	||||||||||||||||||
-
-./:: info: Directory content:
-	File           : file_deleted_in_new_sources.cpp
-	File           : simple2.cpp
-	File           : simple.cpp
-
-
+./:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 1.5 [+0.3333333333]
+	Minimum        : 0 [-1]
+	Maximum        : 3 [+1]
+	Total          : 9.0 [+2.0]
+	Distribution   : 6 [+0] regions in total (including 1 [+1] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.167 : 0.167 : 1 [+1]	|||||||||||||||||
+	             1 : 0.333 : 0.500 : 2 [-3]	|||||||||||||||||||||||||||||||||
+	             2 : 0.333 : 0.833 : 2 [+1]	|||||||||||||||||||||||||||||||||
+	             3 : 0.167 : 1.000 : 1 [+1]	|||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:code' metric
+	Average        : 5.0909090909 [+0.1742424242]
+	Minimum        : 0 [+0]
+	Maximum        : 10 [+2]
+	Total          : 56.0 [-3.0]
+	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
+	             3 : 0.182 : 0.273 :  2 [+0 ]	||||||||||||||||||
+	             4 : 0.273 : 0.545 :  3 [+0 ]	|||||||||||||||||||||||||||
+	             5 : 0.091 : 0.636 :  1 [+0 ]	|||||||||
+	             7 : 0.091 : 0.727 :  1 [-3 ]	|||||||||
+	             8 : 0.182 : 0.909 :  2 [+1 ]	||||||||||||||||||
+	            10 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
+
+./:: info: Overall metrics for 'std.code.lines:preprocessor' metric
+	Average        : 0.1818181818 [+0.0984848485]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [+1]
+	Total          : 2.0 [+1.0]
+	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.909 : 0.909 : 10 [-1 ]	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.000 : 0.909 :  0 [-1 ]	
+	             2 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
+
+./:: info: Overall metrics for 'std.code.lines:comments' metric
+	Average        : 0.8181818182 [+0.1515151515]
+	Minimum        : 0 [+0]
+	Maximum        : 2 [-1]
+	Total          : 9.0 [+1.0]
+	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.364 : 0.364 :  4 [-3 ]	||||||||||||||||||||||||||||||||||||
+	             1 : 0.455 : 0.818 :  5 [+2 ]	|||||||||||||||||||||||||||||||||||||||||||||
+	             2 : 0.182 : 1.000 :  2 [+1 ]	||||||||||||||||||
+
+./:: info: Overall metrics for 'std.code.lines:total' metric
+	Average        : 5.9090909091 [+0.3257575758]
+	Minimum        : 0 [+0]
+	Maximum        : 12 [+3]
+	Total          : 65.0 [-2.0]
+	Distribution   : 11 [-1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.091 : 0.091 :  1 [+0 ]	|||||||||
+	             3 : 0.091 : 0.182 :  1 [-1 ]	|||||||||
+	             4 : 0.182 : 0.364 :  2 [+1 ]	||||||||||||||||||
+	             5 : 0.182 : 0.545 :  2 [+1 ]	||||||||||||||||||
+	             6 : 0.000 : 0.545 :  0 [-1 ]	
+	             7 : 0.182 : 0.727 :  2 [-1 ]	||||||||||||||||||
+	             8 : 0.000 : 0.727 :  0 [-2 ]	
+	             9 : 0.182 : 0.909 :  2 [+1 ]	||||||||||||||||||
+	            12 : 0.091 : 1.000 :  1 [+1 ]	|||||||||
+
+./:: info: Overall metrics for 'std.suppress:count' metric
+	Average        : 1.0 [+1.0] (excluding zero metric values)
+	Minimum        : 1 [+1]
+	Maximum        : 1 [+1]
+	Total          : 1.0 [+1.0]
+	Distribution   : 1 [+1] regions in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             1 : 1.000 : 1.000 : 1 [+1]	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+./:: info: Overall metrics for 'std.suppress.file:count' metric
+	Average        : None [+0] (excluding zero metric values)
+	Minimum        : None [+0]
+	Maximum        : None [+0]
+	Total          : 0.0 [+0.0]
+	Distribution   : 0 [+0] files in total (including 0 [+0] suppressed)
+	  Metric value : Ratio : R-sum : Number of files
+
+./:: info: Directory content:
+	File           : file_deleted_in_new_sources.cpp
+	File           : simple.cpp
+	File           : simple2.cpp
+
+

+ 1 - 1
tests/general/test_std_code_cpp.py

@@ -20,7 +20,7 @@ class Test(tests.common.TestCase):
         runner = tests.common.ToolRunner('view', opts_list=['--format=xml'])
         self.assertExec(runner.run())
         
-        dirs_list = [os.path.join('.', each) for each in os.listdir(self.get_content_paths().cwd)]
+        dirs_list = [os.path.join('.', each) for each in sorted(os.listdir(self.get_content_paths().cwd))]
         runner = tests.common.ToolRunner('view', dirs_list=dirs_list, prefix='files')
         self.assertExec(runner.run())
 

+ 6 - 6
tests/general/test_std_code_cpp/test_parser_collect_default_stdout.gold.txt

@@ -1,6 +1,6 @@
-./test3.cpp:68: warning: Non-matching closing bracket '}' detected.
-
-./test3.cpp:88: warning: Non-matching closing bracket '}' detected.
-
-./test3.cpp:110: warning: Non-matching opening bracket '{' detected.
-
+./test3.cpp:68: warning: Non-matching closing bracket '}' detected.
+
+./test3.cpp:88: warning: Non-matching closing bracket '}' detected.
+
+./test3.cpp:110: warning: Non-matching opening bracket '{' detected.
+

+ 110 - 110
tests/general/test_std_code_cpp/test_parser_limit_default_stdout.gold.txt

@@ -1,110 +1,110 @@
-./operator_test.hpp:6: warning: Metric 'std.code.complexity:cyclomatic' for region 'policy_mcr' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : policy_mcr
-	Metric value   : 2
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./operator_test.hpp:71: warning: Metric 'std.code.complexity:cyclomatic' for region 'operator &&' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : operator &&
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./operator_test.hpp:72: warning: Metric 'std.code.complexity:cyclomatic' for region 'operator ||' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : operator ||
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test.c:147: warning: Metric 'std.code.complexity:cyclomatic' for region 'uppercase' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : uppercase
-	Metric value   : 2
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test.c:216: warning: Metric 'std.code.complexity:cyclomatic' for region 'reset' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : reset
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test.c:296: warning: Metric 'std.code.complexity:cyclomatic' for region 'save' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : save
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test.c:332: warning: Metric 'std.code.complexity:cyclomatic' for region 'main' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : main
-	Metric value   : 2
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test2.cpp:7: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : A
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test2.cpp:23: warning: Metric 'std.code.complexity:cyclomatic' for region 'main' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : main
-	Metric value   : 2
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test3.cpp:39: warning: Metric 'std.code.complexity:cyclomatic' for region 'doColor' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : doColor
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test3.cpp:53: warning: Metric 'std.code.complexity:cyclomatic' for region 'doFont' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : doFont
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./test3.cpp:72: warning: Metric 'std.code.complexity:cyclomatic' for region 'doFont222' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : doFont222
-	Metric value   : 2
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 12 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./operator_test.hpp:6: warning: Metric 'std.code.complexity:cyclomatic' for region 'policy_mcr' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : policy_mcr
+	Metric value   : 2
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./operator_test.hpp:71: warning: Metric 'std.code.complexity:cyclomatic' for region 'operator &&' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : operator &&
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./operator_test.hpp:72: warning: Metric 'std.code.complexity:cyclomatic' for region 'operator ||' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : operator ||
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test.c:147: warning: Metric 'std.code.complexity:cyclomatic' for region 'uppercase' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : uppercase
+	Metric value   : 2
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test.c:216: warning: Metric 'std.code.complexity:cyclomatic' for region 'reset' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : reset
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test.c:296: warning: Metric 'std.code.complexity:cyclomatic' for region 'save' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : save
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test.c:332: warning: Metric 'std.code.complexity:cyclomatic' for region 'main' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : main
+	Metric value   : 2
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test2.cpp:7: warning: Metric 'std.code.complexity:cyclomatic' for region 'A' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : A
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test2.cpp:23: warning: Metric 'std.code.complexity:cyclomatic' for region 'main' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : main
+	Metric value   : 2
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test3.cpp:39: warning: Metric 'std.code.complexity:cyclomatic' for region 'doColor' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : doColor
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test3.cpp:53: warning: Metric 'std.code.complexity:cyclomatic' for region 'doFont' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : doFont
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./test3.cpp:72: warning: Metric 'std.code.complexity:cyclomatic' for region 'doFont222' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : doFont222
+	Metric value   : 2
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 12 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 27 - 27
tests/general/test_std_code_cpp/test_parser_view_default_stdout.gold.txt

@@ -1,27 +1,27 @@
-<view>
-
-    <data>
-        <info id="1" path="./" />
-        <file-data />
-        <subfiles>
-            <subfile>operator_test.hpp</subfile>
-            <subfile>function_ends_on_class.cpp</subfile>
-            <subfile>test.c</subfile>
-            <subfile>test2.cpp</subfile>
-            <subfile>test3.cpp</subfile>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="0.197674418605" count="86" max="2" min="0" nonzero="False" sup="0" total="17.0">
-                    <distribution-bars>
-                        <distribution-bar count="74" metric="0" ratio="0.860465116279" />
-                        <distribution-bar count="7" metric="1" ratio="0.0813953488372" />
-                        <distribution-bar count="5" metric="2" ratio="0.0581395348837" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="0.1976744186" count="86" max="2" min="0" nonzero="False" sup="0" total="17.0">
+                    <distribution-bars>
+                        <distribution-bar count="74" metric="0" ratio="0.8604651163" />
+                        <distribution-bar count="7" metric="1" ratio="0.0813953488" />
+                        <distribution-bar count="5" metric="2" ratio="0.0581395349" />
+                    </distribution-bars>
+                </cyclomatic>
+            </std.code.complexity>
+        </aggregated-data>
+        <file-data />
+        <subdirs>
+        </subdirs>
+        <subfiles>
+            <subfile>function_ends_on_class.cpp</subfile>
+            <subfile>operator_test.hpp</subfile>
+            <subfile>test.c</subfile>
+            <subfile>test2.cpp</subfile>
+            <subfile>test3.cpp</subfile>
+        </subfiles>
+    </data>
+</view>

文件差異過大導致無法顯示
+ 889 - 889
tests/general/test_std_code_cpp/test_parser_view_files_stdout.gold.txt


+ 1 - 1
tests/general/test_std_code_cs.py

@@ -20,7 +20,7 @@ class Test(tests.common.TestCase):
         runner = tests.common.ToolRunner('view', ['--nest-regions', '--format=xml'])
         self.assertExec(runner.run())
 
-        dirs_list = [os.path.join('.', each) for each in os.listdir(self.get_content_paths().cwd)]
+        dirs_list = [os.path.join('.', each) for each in sorted(os.listdir(self.get_content_paths().cwd))]
         runner = tests.common.ToolRunner('view',
                                          opts_list=['--nest-regions', '--format=txt'],
                                          dirs_list=dirs_list,

+ 146 - 146
tests/general/test_std_code_cs/test_parser_limit_default_stdout.gold.txt

@@ -1,146 +1,146 @@
-./File.cs:74: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : get
-	Metric value   : 3
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:95: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : get
-	Metric value   : 2
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:120: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : get
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:134: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : get
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:148: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : get
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:160: warning: Metric 'std.code.complexity:cyclomatic' for region 'Close' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : Close
-	Metric value   : 4
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:190: warning: Metric 'std.code.complexity:cyclomatic' for region 'SetRecord' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : SetRecord
-	Metric value   : 6
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:245: warning: Metric 'std.code.complexity:cyclomatic' for region 'GetFile' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : GetFile
-	Metric value   : 5
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:277: warning: Metric 'std.code.complexity:cyclomatic' for region 'GetFile' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : GetFile
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:288: warning: Metric 'std.code.complexity:cyclomatic' for region 'AllocateFile' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : AllocateFile
-	Metric value   : 5
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:327: warning: Metric 'std.code.complexity:cyclomatic' for region 'FindFreeFile' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : FindFreeFile
-	Metric value   : 5
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:361: warning: Metric 'std.code.complexity:cyclomatic' for region 'CloseAll' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : CloseAll
-	Metric value   : 4
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./File.cs:426: warning: Metric 'std.code.complexity:cyclomatic' for region 'Unlock' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : Unlock
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./Generics.cs:50: warning: Metric 'std.code.complexity:cyclomatic' for region 'Grow' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : Grow
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./interface.cs:135: warning: Metric 'std.code.complexity:cyclomatic' for region 'Equals' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : Equals
-	Metric value   : 1
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./interface.cs:169: warning: Metric 'std.code.complexity:cyclomatic' for region 'ToTitleCase' exceeds the limit.
-	Metric name    : std.code.complexity:cyclomatic
-	Region name    : ToTitleCase
-	Metric value   : 4
-	Modified       : None
-	Change trend   : None
-	Limit          : 0.0
-	Suppressed     : False
-
-./:: info: 16 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
-
+./File.cs:74: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : get
+	Metric value   : 3
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:95: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : get
+	Metric value   : 2
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:120: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : get
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:134: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : get
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:148: warning: Metric 'std.code.complexity:cyclomatic' for region 'get' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : get
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:160: warning: Metric 'std.code.complexity:cyclomatic' for region 'Close' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : Close
+	Metric value   : 4
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:190: warning: Metric 'std.code.complexity:cyclomatic' for region 'SetRecord' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : SetRecord
+	Metric value   : 6
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:245: warning: Metric 'std.code.complexity:cyclomatic' for region 'GetFile' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : GetFile
+	Metric value   : 5
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:277: warning: Metric 'std.code.complexity:cyclomatic' for region 'GetFile' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : GetFile
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:288: warning: Metric 'std.code.complexity:cyclomatic' for region 'AllocateFile' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : AllocateFile
+	Metric value   : 5
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:327: warning: Metric 'std.code.complexity:cyclomatic' for region 'FindFreeFile' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : FindFreeFile
+	Metric value   : 5
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:361: warning: Metric 'std.code.complexity:cyclomatic' for region 'CloseAll' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : CloseAll
+	Metric value   : 4
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./File.cs:426: warning: Metric 'std.code.complexity:cyclomatic' for region 'Unlock' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : Unlock
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./Generics.cs:50: warning: Metric 'std.code.complexity:cyclomatic' for region 'Grow' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : Grow
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./interface.cs:135: warning: Metric 'std.code.complexity:cyclomatic' for region 'Equals' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : Equals
+	Metric value   : 1
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./interface.cs:169: warning: Metric 'std.code.complexity:cyclomatic' for region 'ToTitleCase' exceeds the limit.
+	Metric name    : std.code.complexity:cyclomatic
+	Region name    : ToTitleCase
+	Metric value   : 4
+	Modified       : None
+	Change trend   : None
+	Limit          : 0.0
+	Suppressed     : False
+
+./:: info: 16 regions exceeded the limit 'std.code.complexity:cyclomatic' > 0.0 [applied to 'any' region type(s)]
+

+ 29 - 29
tests/general/test_std_code_cs/test_parser_view_default_stdout.gold.txt

@@ -1,29 +1,29 @@
-<view>
-
-    <data>
-        <info id="1" path="./" />
-        <file-data />
-        <subfiles>
-            <subfile>interface.cs</subfile>
-            <subfile>File.cs</subfile>
-            <subfile>Generics.cs</subfile>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="1.15384615385" count="39" max="6" min="0" nonzero="False" sup="0" total="45.0">
-                    <distribution-bars>
-                        <distribution-bar count="23" metric="0" ratio="0.589743589744" />
-                        <distribution-bar count="7" metric="1" ratio="0.179487179487" />
-                        <distribution-bar count="1" metric="2" ratio="0.025641025641" />
-                        <distribution-bar count="1" metric="3" ratio="0.025641025641" />
-                        <distribution-bar count="3" metric="4" ratio="0.0769230769231" />
-                        <distribution-bar count="3" metric="5" ratio="0.0769230769231" />
-                        <distribution-bar count="1" metric="6" ratio="0.025641025641" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="1.1538461538" count="39" max="6" min="0" nonzero="False" sup="0" total="45.0">
+                    <distribution-bars>
+                        <distribution-bar count="23" metric="0" ratio="0.5897435897" />
+                        <distribution-bar count="7" metric="1" ratio="0.1794871795" />
+                        <distribution-bar count="1" metric="2" ratio="0.0256410256" />
+                        <distribution-bar count="1" metric="3" ratio="0.0256410256" />
+                        <distribution-bar count="3" metric="4" ratio="0.0769230769" />
+                        <distribution-bar count="3" metric="5" ratio="0.0769230769" />
+                        <distribution-bar count="1" metric="6" ratio="0.0256410256" />
+                    </distribution-bars>
+                </cyclomatic>
+            </std.code.complexity>
+        </aggregated-data>
+        <file-data />
+        <subdirs>
+        </subdirs>
+        <subfiles>
+            <subfile>File.cs</subfile>
+            <subfile>Generics.cs</subfile>
+            <subfile>interface.cs</subfile>
+        </subfiles>
+    </data>
+</view>

+ 461 - 461
tests/general/test_std_code_cs/test_parser_view_files_stdout.gold.txt

@@ -1,461 +1,461 @@
-./File.cs:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-9141
-	Line numbers   : 1-448
-	Modified       : None
-
-.   ./File.cs:21: info: Metrics per 'Microsoft' region
-    	Region name    : Microsoft
-    	Region type    : namespace
-    	Offsets        : 855-9104
-    	Line numbers   : 21-447
-    	Modified       : None
-
-.   .   ./File.cs:30: info: Metrics per 'File' region
-        	Region name    : File
-        	Region type    : class
-        	Offsets        : 1012-9037
-        	Line numbers   : 30-437
-        	Modified       : None
-
-.   .   .   ./File.cs:74: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 1961-2222
-            	Line numbers   : 74-89
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 3
-
-.   .   .   ./File.cs:95: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 2295-2781
-            	Line numbers   : 95-114
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 2
-
-.   .   .   ./File.cs:120: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 2888-3022
-            	Line numbers   : 120-128
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 1
-
-.   .   .   ./File.cs:134: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 3129-3263
-            	Line numbers   : 134-142
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 1
-
-.   .   .   ./File.cs:148: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 3355-3489
-            	Line numbers   : 148-156
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 1
-
-.   .   .   ./File.cs:160: info: Metrics per 'Close' region
-            	Region name    : Close
-            	Region type    : function
-            	Offsets        : 3497-4076
-            	Line numbers   : 159-187
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 4
-
-.   .   .   ./File.cs:190: info: Metrics per 'SetRecord' region
-            	Region name    : SetRecord
-            	Region type    : function
-            	Offsets        : 4079-4794
-            	Line numbers   : 189-226
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 6
-
-.   .   .   ./File.cs:229: info: Metrics per 'FileTable' region
-            	Region name    : FileTable
-            	Region type    : class
-            	Offsets        : 4797-5103
-            	Line numbers   : 228-242
-            	Modified       : None
-
-.   .   .   .   ./File.cs:235: info: Metrics per 'FileTable' region
-                	Region name    : FileTable
-                	Region type    : function
-                	Offsets        : 4943-5099
-                	Line numbers   : 235-240
-                	Modified       : None
-                	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./File.cs:245: info: Metrics per 'GetFile' region
-            	Region name    : GetFile
-            	Region type    : function
-            	Offsets        : 5126-5822
-            	Line numbers   : 244-274
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 5
-
-.   .   .   ./File.cs:277: info: Metrics per 'GetFile' region
-            	Region name    : GetFile
-            	Region type    : function
-            	Offsets        : 5825-6140
-            	Line numbers   : 276-285
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 1
-
-.   .   .   ./File.cs:288: info: Metrics per 'AllocateFile' region
-            	Region name    : AllocateFile
-            	Region type    : function
-            	Offsets        : 6143-7049
-            	Line numbers   : 287-324
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 5
-
-.   .   .   ./File.cs:327: info: Metrics per 'FindFreeFile' region
-            	Region name    : FindFreeFile
-            	Region type    : function
-            	Offsets        : 7052-7735
-            	Line numbers   : 326-358
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 5
-
-.   .   .   ./File.cs:361: info: Metrics per 'CloseAll' region
-            	Region name    : CloseAll
-            	Region type    : function
-            	Offsets        : 7738-8342
-            	Line numbers   : 360-387
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 4
-
-.   .   .   ./File.cs:391: info: Metrics per 'Write' region
-            	Region name    : Write
-            	Region type    : function
-            	Offsets        : 8345-8437
-            	Line numbers   : 389-394
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./File.cs:398: info: Metrics per 'WriteLine' region
-            	Region name    : WriteLine
-            	Region type    : function
-            	Offsets        : 8440-8541
-            	Line numbers   : 396-401
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./File.cs:405: info: Metrics per 'Tab' region
-            	Region name    : Tab
-            	Region type    : function
-            	Offsets        : 8544-8631
-            	Line numbers   : 403-408
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./File.cs:412: info: Metrics per 'Space' region
-            	Region name    : Space
-            	Region type    : function
-            	Offsets        : 8634-8726
-            	Line numbers   : 410-415
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./File.cs:419: info: Metrics per 'Lock' region
-            	Region name    : Lock
-            	Region type    : function
-            	Offsets        : 8729-8839
-            	Line numbers   : 417-422
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./File.cs:426: info: Metrics per 'Unlock' region
-            	Region name    : Unlock
-            	Region type    : function
-            	Offsets        : 8842-9034
-            	Line numbers   : 424-435
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 1
-
-./File.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 2.05263157895
-	Minimum        : 0
-	Maximum        : 6
-	Total          : 39.0
-	Distribution   : 19 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.316 : 0.316 :  6	||||||||||||||||||||||||||||||||
-	             1 : 0.263 : 0.579 :  5	||||||||||||||||||||||||||
-	             2 : 0.053 : 0.632 :  1	|||||
-	             3 : 0.053 : 0.684 :  1	|||||
-	             4 : 0.105 : 0.789 :  2	|||||||||||
-	             5 : 0.158 : 0.947 :  3	||||||||||||||||
-	             6 : 0.053 : 1.000 :  1	|||||
-
-./Generics.cs:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-3134
-	Line numbers   : 1-106
-	Modified       : None
-
-.   ./Generics.cs:22: info: Metrics per 'Generics' region
-    	Region name    : Generics
-    	Region type    : class
-    	Offsets        : 1182-3133
-    	Line numbers   : 22-105
-    	Modified       : None
-
-.   .   ./Generics.cs:24: info: Metrics per 'MyArray<T>' region
-        	Region name    : MyArray<T>
-        	Region type    : class
-        	Offsets        : 1214-1664
-        	Line numbers   : 24-57
-        	Modified       : None
-
-.   .   .   ./Generics.cs:26: info: Metrics per 'NestedClass<Y>' region
-            	Region name    : NestedClass<Y>
-            	Region type    : class
-            	Offsets        : 1243-1316
-            	Line numbers   : 26-30
-            	Modified       : None
-
-.   .   .   ./Generics.cs:40: info: Metrics per 'MyArray' region
-            	Region name    : MyArray
-            	Region type    : function
-            	Offsets        : 1391-1458
-            	Line numbers   : 40-43
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./Generics.cs:45: info: Metrics per 'Size' region
-            	Region name    : Size
-            	Region type    : function
-            	Offsets        : 1464-1546
-            	Line numbers   : 45-48
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./Generics.cs:50: info: Metrics per 'Grow' region
-            	Region name    : Grow
-            	Region type    : function
-            	Offsets        : 1552-1661
-            	Line numbers   : 50-56
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 1
-
-.   .   ./Generics.cs:59: info: Metrics per 'IInterface' region
-        	Region name    : IInterface
-        	Region type    : interface
-        	Offsets        : 1668-1775
-        	Line numbers   : 59-63
-        	Modified       : None
-
-.   .   ./Generics.cs:65: info: Metrics per 'Base' region
-        	Region name    : Base
-        	Region type    : class
-        	Offsets        : 1779-2084
-        	Line numbers   : 65-74
-        	Modified       : None
-
-.   .   .   ./Generics.cs:71: info: Metrics per 'Generics.IInterface.Method2<T>' region
-            	Region name    : Generics.IInterface.Method2<T>
-            	Region type    : function
-            	Offsets        : 1960-2081
-            	Line numbers   : 70-73
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   ./Generics.cs:76: info: Metrics per 'Derived' region
-        	Region name    : Derived
-        	Region type    : class
-        	Offsets        : 2088-2245
-        	Line numbers   : 76-82
-        	Modified       : None
-
-.   .   .   ./Generics.cs:79: info: Metrics per 'Method1<T>' region
-            	Region name    : Method1<T>
-            	Region type    : function
-            	Offsets        : 2130-2242
-            	Line numbers   : 78-81
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   ./Generics.cs:92: info: Metrics per 'MethodWithConstraint<T,S>' region
-        	Region name    : MethodWithConstraint<T,S>
-        	Region type    : function
-        	Offsets        : 2698-2798
-        	Line numbers   : 92-94
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./Generics.cs:96: info: Metrics per 'MethodWithStructConstraint<T>' region
-        	Region name    : MethodWithStructConstraint<T>
-        	Region type    : function
-        	Offsets        : 2802-2875
-        	Line numbers   : 96-98
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./Generics.cs:100: info: Metrics per 'GetEnumerator' region
-        	Region name    : GetEnumerator
-        	Region type    : function
-        	Offsets        : 2879-3131
-        	Line numbers   : 100-104
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-./Generics.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 0.125
-	Minimum        : 0
-	Maximum        : 1
-	Total          : 1.0
-	Distribution   : 8 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.875 : 0.875 : 7	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.125 : 1.000 : 1	|||||||||||||
-
-./interface.cs:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-6584
-	Line numbers   : 1-219
-	Modified       : None
-
-.   ./interface.cs:22: info: Metrics per 'System' region
-    	Region name    : System
-    	Region type    : namespace
-    	Offsets        : 918-1139
-    	Line numbers   : 22-37
-    	Modified       : None
-
-.   .   ./interface.cs:30: info: Metrics per 'IDeserializationCallback' region
-        	Region name    : IDeserializationCallback
-        	Region type    : interface
-        	Offsets        : 960-1097
-        	Line numbers   : 25-35
-        	Modified       : None
-
-.   ./interface.cs:61: info: Metrics per 'System' region
-    	Region name    : System
-    	Region type    : namespace
-    	Offsets        : 2040-6548
-    	Line numbers   : 61-218
-    	Modified       : None
-
-.   .   ./interface.cs:69: info: Metrics per 'TextInfo' region
-        	Region name    : TextInfo
-        	Region type    : class
-        	Offsets        : 2183-6526
-        	Line numbers   : 69-216
-        	Modified       : None
-
-.   .   .   ./interface.cs:80: info: Metrics per 'TextInfo' region
-            	Region name    : TextInfo
-            	Region type    : function
-            	Offsets        : 2288-2687
-            	Line numbers   : 75-83
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:88: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 2802-2940
-            	Line numbers   : 88-92
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:98: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 3073-3209
-            	Line numbers   : 98-102
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:108: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 3336-3475
-            	Line numbers   : 108-112
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:118: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 3602-3739
-            	Line numbers   : 118-122
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:128: info: Metrics per 'get' region
-            	Region name    : get
-            	Region type    : function
-            	Offsets        : 3863-3934
-            	Line numbers   : 128-131
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:135: info: Metrics per 'Equals' region
-            	Region name    : Equals
-            	Region type    : function
-            	Offsets        : 3954-4348
-            	Line numbers   : 134-146
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 1
-
-.   .   .   ./interface.cs:149: info: Metrics per 'GetHashCode' region
-            	Region name    : GetHashCode
-            	Region type    : function
-            	Offsets        : 4354-4489
-            	Line numbers   : 148-152
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:169: info: Metrics per 'ToTitleCase' region
-            	Region name    : ToTitleCase
-            	Region type    : function
-            	Offsets        : 5003-5940
-            	Line numbers   : 168-195
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 4
-
-.   .   .   ./interface.cs:198: info: Metrics per 'I.Deserialization.Callback.OnDeserialization' region
-            	Region name    : I.Deserialization.Callback.OnDeserialization
-            	Region type    : function
-            	Offsets        : 5946-6128
-            	Line numbers   : 197-201
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:204: info: Metrics per 'ToString' region
-            	Region name    : ToString
-            	Region type    : function
-            	Offsets        : 6134-6296
-            	Line numbers   : 203-207
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-.   .   .   ./interface.cs:211: info: Metrics per 'IDeserializationCallback.OnDeserialization' region
-            	Region name    : IDeserializationCallback.OnDeserialization
-            	Region type    : function
-            	Offsets        : 6302-6523
-            	Line numbers   : 209-214
-            	Modified       : None
-            	std.code.complexity:cyclomatic: 0
-
-./interface.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 0.416666666667
-	Minimum        : 0
-	Maximum        : 4
-	Total          : 5.0
-	Distribution   : 12 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 0.833 : 0.833 : 10	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-	             1 : 0.083 : 0.917 :  1	||||||||
-	             4 : 0.083 : 1.000 :  1	||||||||
-
-
+./File.cs:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-9141
+	Line numbers   : 1-448
+	Modified       : None
+
+.   ./File.cs:21: info: Metrics per 'Microsoft' region
+    	Region name    : Microsoft
+    	Region type    : namespace
+    	Offsets        : 855-9104
+    	Line numbers   : 21-447
+    	Modified       : None
+
+.   .   ./File.cs:30: info: Metrics per 'File' region
+        	Region name    : File
+        	Region type    : class
+        	Offsets        : 1012-9037
+        	Line numbers   : 30-437
+        	Modified       : None
+
+.   .   .   ./File.cs:74: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 1961-2222
+            	Line numbers   : 74-89
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 3
+
+.   .   .   ./File.cs:95: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 2295-2781
+            	Line numbers   : 95-114
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 2
+
+.   .   .   ./File.cs:120: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 2888-3022
+            	Line numbers   : 120-128
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 1
+
+.   .   .   ./File.cs:134: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 3129-3263
+            	Line numbers   : 134-142
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 1
+
+.   .   .   ./File.cs:148: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 3355-3489
+            	Line numbers   : 148-156
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 1
+
+.   .   .   ./File.cs:160: info: Metrics per 'Close' region
+            	Region name    : Close
+            	Region type    : function
+            	Offsets        : 3497-4076
+            	Line numbers   : 159-187
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 4
+
+.   .   .   ./File.cs:190: info: Metrics per 'SetRecord' region
+            	Region name    : SetRecord
+            	Region type    : function
+            	Offsets        : 4079-4794
+            	Line numbers   : 189-226
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 6
+
+.   .   .   ./File.cs:229: info: Metrics per 'FileTable' region
+            	Region name    : FileTable
+            	Region type    : class
+            	Offsets        : 4797-5103
+            	Line numbers   : 228-242
+            	Modified       : None
+
+.   .   .   .   ./File.cs:235: info: Metrics per 'FileTable' region
+                	Region name    : FileTable
+                	Region type    : function
+                	Offsets        : 4943-5099
+                	Line numbers   : 235-240
+                	Modified       : None
+                	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./File.cs:245: info: Metrics per 'GetFile' region
+            	Region name    : GetFile
+            	Region type    : function
+            	Offsets        : 5126-5822
+            	Line numbers   : 244-274
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 5
+
+.   .   .   ./File.cs:277: info: Metrics per 'GetFile' region
+            	Region name    : GetFile
+            	Region type    : function
+            	Offsets        : 5825-6140
+            	Line numbers   : 276-285
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 1
+
+.   .   .   ./File.cs:288: info: Metrics per 'AllocateFile' region
+            	Region name    : AllocateFile
+            	Region type    : function
+            	Offsets        : 6143-7049
+            	Line numbers   : 287-324
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 5
+
+.   .   .   ./File.cs:327: info: Metrics per 'FindFreeFile' region
+            	Region name    : FindFreeFile
+            	Region type    : function
+            	Offsets        : 7052-7735
+            	Line numbers   : 326-358
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 5
+
+.   .   .   ./File.cs:361: info: Metrics per 'CloseAll' region
+            	Region name    : CloseAll
+            	Region type    : function
+            	Offsets        : 7738-8342
+            	Line numbers   : 360-387
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 4
+
+.   .   .   ./File.cs:391: info: Metrics per 'Write' region
+            	Region name    : Write
+            	Region type    : function
+            	Offsets        : 8345-8437
+            	Line numbers   : 389-394
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./File.cs:398: info: Metrics per 'WriteLine' region
+            	Region name    : WriteLine
+            	Region type    : function
+            	Offsets        : 8440-8541
+            	Line numbers   : 396-401
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./File.cs:405: info: Metrics per 'Tab' region
+            	Region name    : Tab
+            	Region type    : function
+            	Offsets        : 8544-8631
+            	Line numbers   : 403-408
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./File.cs:412: info: Metrics per 'Space' region
+            	Region name    : Space
+            	Region type    : function
+            	Offsets        : 8634-8726
+            	Line numbers   : 410-415
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./File.cs:419: info: Metrics per 'Lock' region
+            	Region name    : Lock
+            	Region type    : function
+            	Offsets        : 8729-8839
+            	Line numbers   : 417-422
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./File.cs:426: info: Metrics per 'Unlock' region
+            	Region name    : Unlock
+            	Region type    : function
+            	Offsets        : 8842-9034
+            	Line numbers   : 424-435
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 1
+
+./File.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 2.0526315789
+	Minimum        : 0
+	Maximum        : 6
+	Total          : 39.0
+	Distribution   : 19 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.316 : 0.316 :  6	||||||||||||||||||||||||||||||||
+	             1 : 0.263 : 0.579 :  5	||||||||||||||||||||||||||
+	             2 : 0.053 : 0.632 :  1	|||||
+	             3 : 0.053 : 0.684 :  1	|||||
+	             4 : 0.105 : 0.789 :  2	|||||||||||
+	             5 : 0.158 : 0.947 :  3	||||||||||||||||
+	             6 : 0.053 : 1.000 :  1	|||||
+
+./Generics.cs:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-3134
+	Line numbers   : 1-106
+	Modified       : None
+
+.   ./Generics.cs:22: info: Metrics per 'Generics' region
+    	Region name    : Generics
+    	Region type    : class
+    	Offsets        : 1182-3133
+    	Line numbers   : 22-105
+    	Modified       : None
+
+.   .   ./Generics.cs:24: info: Metrics per 'MyArray<T>' region
+        	Region name    : MyArray<T>
+        	Region type    : class
+        	Offsets        : 1214-1664
+        	Line numbers   : 24-57
+        	Modified       : None
+
+.   .   .   ./Generics.cs:26: info: Metrics per 'NestedClass<Y>' region
+            	Region name    : NestedClass<Y>
+            	Region type    : class
+            	Offsets        : 1243-1316
+            	Line numbers   : 26-30
+            	Modified       : None
+
+.   .   .   ./Generics.cs:40: info: Metrics per 'MyArray' region
+            	Region name    : MyArray
+            	Region type    : function
+            	Offsets        : 1391-1458
+            	Line numbers   : 40-43
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./Generics.cs:45: info: Metrics per 'Size' region
+            	Region name    : Size
+            	Region type    : function
+            	Offsets        : 1464-1546
+            	Line numbers   : 45-48
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./Generics.cs:50: info: Metrics per 'Grow' region
+            	Region name    : Grow
+            	Region type    : function
+            	Offsets        : 1552-1661
+            	Line numbers   : 50-56
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 1
+
+.   .   ./Generics.cs:59: info: Metrics per 'IInterface' region
+        	Region name    : IInterface
+        	Region type    : interface
+        	Offsets        : 1668-1775
+        	Line numbers   : 59-63
+        	Modified       : None
+
+.   .   ./Generics.cs:65: info: Metrics per 'Base' region
+        	Region name    : Base
+        	Region type    : class
+        	Offsets        : 1779-2084
+        	Line numbers   : 65-74
+        	Modified       : None
+
+.   .   .   ./Generics.cs:71: info: Metrics per 'Generics.IInterface.Method2<T>' region
+            	Region name    : Generics.IInterface.Method2<T>
+            	Region type    : function
+            	Offsets        : 1960-2081
+            	Line numbers   : 70-73
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   ./Generics.cs:76: info: Metrics per 'Derived' region
+        	Region name    : Derived
+        	Region type    : class
+        	Offsets        : 2088-2245
+        	Line numbers   : 76-82
+        	Modified       : None
+
+.   .   .   ./Generics.cs:79: info: Metrics per 'Method1<T>' region
+            	Region name    : Method1<T>
+            	Region type    : function
+            	Offsets        : 2130-2242
+            	Line numbers   : 78-81
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   ./Generics.cs:92: info: Metrics per 'MethodWithConstraint<T,S>' region
+        	Region name    : MethodWithConstraint<T,S>
+        	Region type    : function
+        	Offsets        : 2698-2798
+        	Line numbers   : 92-94
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./Generics.cs:96: info: Metrics per 'MethodWithStructConstraint<T>' region
+        	Region name    : MethodWithStructConstraint<T>
+        	Region type    : function
+        	Offsets        : 2802-2875
+        	Line numbers   : 96-98
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./Generics.cs:100: info: Metrics per 'GetEnumerator' region
+        	Region name    : GetEnumerator
+        	Region type    : function
+        	Offsets        : 2879-3131
+        	Line numbers   : 100-104
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+./Generics.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 0.125
+	Minimum        : 0
+	Maximum        : 1
+	Total          : 1.0
+	Distribution   : 8 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.875 : 0.875 : 7	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.125 : 1.000 : 1	||||||||||||
+
+./interface.cs:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-6584
+	Line numbers   : 1-219
+	Modified       : None
+
+.   ./interface.cs:22: info: Metrics per 'System' region
+    	Region name    : System
+    	Region type    : namespace
+    	Offsets        : 918-1139
+    	Line numbers   : 22-37
+    	Modified       : None
+
+.   .   ./interface.cs:30: info: Metrics per 'IDeserializationCallback' region
+        	Region name    : IDeserializationCallback
+        	Region type    : interface
+        	Offsets        : 960-1097
+        	Line numbers   : 25-35
+        	Modified       : None
+
+.   ./interface.cs:61: info: Metrics per 'System' region
+    	Region name    : System
+    	Region type    : namespace
+    	Offsets        : 2040-6548
+    	Line numbers   : 61-218
+    	Modified       : None
+
+.   .   ./interface.cs:69: info: Metrics per 'TextInfo' region
+        	Region name    : TextInfo
+        	Region type    : class
+        	Offsets        : 2183-6526
+        	Line numbers   : 69-216
+        	Modified       : None
+
+.   .   .   ./interface.cs:80: info: Metrics per 'TextInfo' region
+            	Region name    : TextInfo
+            	Region type    : function
+            	Offsets        : 2288-2687
+            	Line numbers   : 75-83
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:88: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 2802-2940
+            	Line numbers   : 88-92
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:98: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 3073-3209
+            	Line numbers   : 98-102
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:108: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 3336-3475
+            	Line numbers   : 108-112
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:118: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 3602-3739
+            	Line numbers   : 118-122
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:128: info: Metrics per 'get' region
+            	Region name    : get
+            	Region type    : function
+            	Offsets        : 3863-3934
+            	Line numbers   : 128-131
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:135: info: Metrics per 'Equals' region
+            	Region name    : Equals
+            	Region type    : function
+            	Offsets        : 3954-4348
+            	Line numbers   : 134-146
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 1
+
+.   .   .   ./interface.cs:149: info: Metrics per 'GetHashCode' region
+            	Region name    : GetHashCode
+            	Region type    : function
+            	Offsets        : 4354-4489
+            	Line numbers   : 148-152
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:169: info: Metrics per 'ToTitleCase' region
+            	Region name    : ToTitleCase
+            	Region type    : function
+            	Offsets        : 5003-5940
+            	Line numbers   : 168-195
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 4
+
+.   .   .   ./interface.cs:198: info: Metrics per 'I.Deserialization.Callback.OnDeserialization' region
+            	Region name    : I.Deserialization.Callback.OnDeserialization
+            	Region type    : function
+            	Offsets        : 5946-6128
+            	Line numbers   : 197-201
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:204: info: Metrics per 'ToString' region
+            	Region name    : ToString
+            	Region type    : function
+            	Offsets        : 6134-6296
+            	Line numbers   : 203-207
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+.   .   .   ./interface.cs:211: info: Metrics per 'IDeserializationCallback.OnDeserialization' region
+            	Region name    : IDeserializationCallback.OnDeserialization
+            	Region type    : function
+            	Offsets        : 6302-6523
+            	Line numbers   : 209-214
+            	Modified       : None
+            	std.code.complexity:cyclomatic: 0
+
+./interface.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 0.4166666667
+	Minimum        : 0
+	Maximum        : 4
+	Total          : 5.0
+	Distribution   : 12 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 0.833 : 0.833 : 10	|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+	             1 : 0.083 : 0.917 :  1	||||||||
+	             4 : 0.083 : 1.000 :  1	||||||||
+
+

+ 1 - 1
tests/general/test_std_code_cs_unit.py

@@ -20,7 +20,7 @@ class Test(tests.common.TestCase):
         runner = tests.common.ToolRunner('view', ['--nest-regions', '--format=xml'])
         self.assertExec(runner.run())
 
-        dirs_list = [os.path.join('.', each) for each in os.listdir(self.get_content_paths().cwd)]
+        dirs_list = [os.path.join('.', each) for each in sorted(os.listdir(self.get_content_paths().cwd))]
         runner = tests.common.ToolRunner('view',
                                          opts_list=['--nest-regions', '--format=txt'],
                                          dirs_list=dirs_list,

+ 21 - 21
tests/general/test_std_code_cs_unit/test_parser_view_default_stdout.gold.txt

@@ -1,21 +1,21 @@
-<view>
-
-    <data>
-        <info id="1" path="./" />
-        <file-data />
-        <subfiles>
-            <subfile>sample.cs</subfile>
-        </subfiles>
-        <subdirs>
-        </subdirs>
-        <aggregated-data>
-            <std.code.complexity>
-                <cyclomatic avg="0.0" count="18" max="0" min="0" nonzero="False" sup="0" total="0.0">
-                    <distribution-bars>
-                        <distribution-bar count="18" metric="0" ratio="1.0" />
-                    </distribution-bars>
-                </cyclomatic>
-            </std.code.complexity>
-        </aggregated-data>
-    </data>
-</view>
+<view>
+
+    <data>
+        <info id="1" path="./" />
+        <aggregated-data>
+            <std.code.complexity>
+                <cyclomatic avg="0.0" count="18" max="0" min="0" nonzero="False" sup="0" total="0.0">
+                    <distribution-bars>
+                        <distribution-bar count="18" metric="0" ratio="1.0" />
+                    </distribution-bars>
+                </cyclomatic>
+            </std.code.complexity>
+        </aggregated-data>
+        <file-data />
+        <subdirs>
+        </subdirs>
+        <subfiles>
+            <subfile>sample.cs</subfile>
+        </subfiles>
+    </data>
+</view>

+ 217 - 217
tests/general/test_std_code_cs_unit/test_parser_view_files_stdout.gold.txt

@@ -1,217 +1,217 @@
-./sample.cs:0: info: Metrics per '__global__' region
-	Region name    : __global__
-	Region type    : global
-	Offsets        : 0-3040
-	Line numbers   : 1-148
-	Modified       : None
-
-.   ./sample.cs:3: info: Metrics per 'example' region
-    	Region name    : example
-    	Region type    : class
-    	Offsets        : 2-3039
-    	Line numbers   : 3-147
-    	Modified       : None
-
-.   .   ./sample.cs:5: info: Metrics per 'testfunction1' region
-        	Region name    : testfunction1
-        	Region type    : function
-        	Offsets        : 29-157
-        	Line numbers   : 5-9
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:11: info: Metrics per 'testfunction2<T>' region
-        	Region name    : testfunction2<T>
-        	Region type    : function
-        	Offsets        : 163-292
-        	Line numbers   : 11-15
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:17: info: Metrics per 'testfunction3<T>' region
-        	Region name    : testfunction3<T>
-        	Region type    : function
-        	Offsets        : 298-423
-        	Line numbers   : 17-21
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:23: info: Metrics per 'testfunction4' region
-        	Region name    : testfunction4
-        	Region type    : function
-        	Offsets        : 429-551
-        	Line numbers   : 23-27
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:29: info: Metrics per 'testfunction5<T,S>' region
-        	Region name    : testfunction5<T,S>
-        	Region type    : function
-        	Offsets        : 557-685
-        	Line numbers   : 29-33
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:35: info: Metrics per 'testfunction6<T,S>' region
-        	Region name    : testfunction6<T,S>
-        	Region type    : function
-        	Offsets        : 691-833
-        	Line numbers   : 35-39
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:41: info: Metrics per 'testfunction7<T,S>' region
-        	Region name    : testfunction7<T,S>
-        	Region type    : function
-        	Offsets        : 839-989
-        	Line numbers   : 41-46
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:48: info: Metrics per 'testfunction8<T,S>' region
-        	Region name    : testfunction8<T,S>
-        	Region type    : function
-        	Offsets        : 995-1152
-        	Line numbers   : 48-53
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:55: info: Metrics per 'testfunction9<T,S>' region
-        	Region name    : testfunction9<T,S>
-        	Region type    : function
-        	Offsets        : 1158-1294
-        	Line numbers   : 55-59
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:61: info: Metrics per 'Interface.testfunction10<T,S>' region
-        	Region name    : Interface.testfunction10<T,S>
-        	Region type    : function
-        	Offsets        : 1300-1444
-        	Line numbers   : 61-65
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:67: info: Metrics per 'Interface<T>.testfunction11<T,S>' region
-        	Region name    : Interface<T>.testfunction11<T,S>
-        	Region type    : function
-        	Offsets        : 1450-1597
-        	Line numbers   : 67-71
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:73: info: Metrics per 'Interface<T,S>.testfunction12' region
-        	Region name    : Interface<T,S>.testfunction12
-        	Region type    : function
-        	Offsets        : 1603-1747
-        	Line numbers   : 73-77
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:79: info: Metrics per 'Interface<T,S>.testfunction13<T>' region
-        	Region name    : Interface<T,S>.testfunction13<T>
-        	Region type    : function
-        	Offsets        : 1753-1900
-        	Line numbers   : 79-83
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:85: info: Metrics per 'Interface<T>.testfunction14<T,S>' region
-        	Region name    : Interface<T>.testfunction14<T,S>
-        	Region type    : function
-        	Offsets        : 1906-2053
-        	Line numbers   : 85-89
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:91: info: Metrics per 'Interface<T,S>.testfunction15<T,S>' region
-        	Region name    : Interface<T,S>.testfunction15<T,S>
-        	Region type    : function
-        	Offsets        : 2059-2208
-        	Line numbers   : 91-95
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:97: info: Metrics per 'Interface<T,S>.testfunction16<T>' region
-        	Region name    : Interface<T,S>.testfunction16<T>
-        	Region type    : function
-        	Offsets        : 2214-2362
-        	Line numbers   : 97-101
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:103: info: Metrics per 'Interface<T,S>.testfunction17<T>' region
-        	Region name    : Interface<T,S>.testfunction17<T>
-        	Region type    : function
-        	Offsets        : 2368-2517
-        	Line numbers   : 103-107
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-.   .   ./sample.cs:109: info: Metrics per 'testClass1' region
-        	Region name    : testClass1
-        	Region type    : class
-        	Offsets        : 2523-2551
-        	Line numbers   : 109-111
-        	Modified       : None
-
-.   .   ./sample.cs:113: info: Metrics per 'testClass2' region
-        	Region name    : testClass2
-        	Region type    : class
-        	Offsets        : 2557-2585
-        	Line numbers   : 113-115
-        	Modified       : None
-
-.   .   ./sample.cs:117: info: Metrics per 'testClass3<T>' region
-        	Region name    : testClass3<T>
-        	Region type    : class
-        	Offsets        : 2591-2622
-        	Line numbers   : 117-119
-        	Modified       : None
-
-.   .   ./sample.cs:121: info: Metrics per 'testClass4<T>' region
-        	Region name    : testClass4<T>
-        	Region type    : class
-        	Offsets        : 2628-2660
-        	Line numbers   : 121-123
-        	Modified       : None
-
-.   .   ./sample.cs:125: info: Metrics per 'testClass5<T,S>' region
-        	Region name    : testClass5<T,S>
-        	Region type    : class
-        	Offsets        : 2666-2700
-        	Line numbers   : 125-127
-        	Modified       : None
-
-.   .   ./sample.cs:129: info: Metrics per 'testClass6<T,S>' region
-        	Region name    : testClass6<T,S>
-        	Region type    : class
-        	Offsets        : 2706-2794
-        	Line numbers   : 129-134
-        	Modified       : None
-
-.   .   ./sample.cs:136: info: Metrics per 'testClass7<T>' region
-        	Region name    : testClass7<T>
-        	Region type    : class
-        	Offsets        : 2800-2857
-        	Line numbers   : 136-139
-        	Modified       : None
-
-.   .   ./sample.cs:141: info: Metrics per 'Interface<T,S,A,B,C>.testfunction18<T,S,A,V,F,G>' region
-        	Region name    : Interface<T,S,A,B,C>.testfunction18<T,S,A,V,F,G>
-        	Region type    : function
-        	Offsets        : 2863-3036
-        	Line numbers   : 141-145
-        	Modified       : None
-        	std.code.complexity:cyclomatic: 0
-
-./sample.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
-	Average        : 0.0
-	Minimum        : 0
-	Maximum        : 0
-	Total          : 0.0
-	Distribution   : 18 regions in total (including 0 suppressed)
-	  Metric value : Ratio : R-sum : Number of regions
-	             0 : 1.000 : 1.000 : 18	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-
-
+./sample.cs:0: info: Metrics per '__global__' region
+	Region name    : __global__
+	Region type    : global
+	Offsets        : 0-3040
+	Line numbers   : 1-148
+	Modified       : None
+
+.   ./sample.cs:3: info: Metrics per 'example' region
+    	Region name    : example
+    	Region type    : class
+    	Offsets        : 2-3039
+    	Line numbers   : 3-147
+    	Modified       : None
+
+.   .   ./sample.cs:5: info: Metrics per 'testfunction1' region
+        	Region name    : testfunction1
+        	Region type    : function
+        	Offsets        : 29-157
+        	Line numbers   : 5-9
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:11: info: Metrics per 'testfunction2<T>' region
+        	Region name    : testfunction2<T>
+        	Region type    : function
+        	Offsets        : 163-292
+        	Line numbers   : 11-15
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:17: info: Metrics per 'testfunction3<T>' region
+        	Region name    : testfunction3<T>
+        	Region type    : function
+        	Offsets        : 298-423
+        	Line numbers   : 17-21
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:23: info: Metrics per 'testfunction4' region
+        	Region name    : testfunction4
+        	Region type    : function
+        	Offsets        : 429-551
+        	Line numbers   : 23-27
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:29: info: Metrics per 'testfunction5<T,S>' region
+        	Region name    : testfunction5<T,S>
+        	Region type    : function
+        	Offsets        : 557-685
+        	Line numbers   : 29-33
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:35: info: Metrics per 'testfunction6<T,S>' region
+        	Region name    : testfunction6<T,S>
+        	Region type    : function
+        	Offsets        : 691-833
+        	Line numbers   : 35-39
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:41: info: Metrics per 'testfunction7<T,S>' region
+        	Region name    : testfunction7<T,S>
+        	Region type    : function
+        	Offsets        : 839-989
+        	Line numbers   : 41-46
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:48: info: Metrics per 'testfunction8<T,S>' region
+        	Region name    : testfunction8<T,S>
+        	Region type    : function
+        	Offsets        : 995-1152
+        	Line numbers   : 48-53
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:55: info: Metrics per 'testfunction9<T,S>' region
+        	Region name    : testfunction9<T,S>
+        	Region type    : function
+        	Offsets        : 1158-1294
+        	Line numbers   : 55-59
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:61: info: Metrics per 'Interface.testfunction10<T,S>' region
+        	Region name    : Interface.testfunction10<T,S>
+        	Region type    : function
+        	Offsets        : 1300-1444
+        	Line numbers   : 61-65
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:67: info: Metrics per 'Interface<T>.testfunction11<T,S>' region
+        	Region name    : Interface<T>.testfunction11<T,S>
+        	Region type    : function
+        	Offsets        : 1450-1597
+        	Line numbers   : 67-71
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:73: info: Metrics per 'Interface<T,S>.testfunction12' region
+        	Region name    : Interface<T,S>.testfunction12
+        	Region type    : function
+        	Offsets        : 1603-1747
+        	Line numbers   : 73-77
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:79: info: Metrics per 'Interface<T,S>.testfunction13<T>' region
+        	Region name    : Interface<T,S>.testfunction13<T>
+        	Region type    : function
+        	Offsets        : 1753-1900
+        	Line numbers   : 79-83
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:85: info: Metrics per 'Interface<T>.testfunction14<T,S>' region
+        	Region name    : Interface<T>.testfunction14<T,S>
+        	Region type    : function
+        	Offsets        : 1906-2053
+        	Line numbers   : 85-89
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:91: info: Metrics per 'Interface<T,S>.testfunction15<T,S>' region
+        	Region name    : Interface<T,S>.testfunction15<T,S>
+        	Region type    : function
+        	Offsets        : 2059-2208
+        	Line numbers   : 91-95
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:97: info: Metrics per 'Interface<T,S>.testfunction16<T>' region
+        	Region name    : Interface<T,S>.testfunction16<T>
+        	Region type    : function
+        	Offsets        : 2214-2362
+        	Line numbers   : 97-101
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:103: info: Metrics per 'Interface<T,S>.testfunction17<T>' region
+        	Region name    : Interface<T,S>.testfunction17<T>
+        	Region type    : function
+        	Offsets        : 2368-2517
+        	Line numbers   : 103-107
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+.   .   ./sample.cs:109: info: Metrics per 'testClass1' region
+        	Region name    : testClass1
+        	Region type    : class
+        	Offsets        : 2523-2551
+        	Line numbers   : 109-111
+        	Modified       : None
+
+.   .   ./sample.cs:113: info: Metrics per 'testClass2' region
+        	Region name    : testClass2
+        	Region type    : class
+        	Offsets        : 2557-2585
+        	Line numbers   : 113-115
+        	Modified       : None
+
+.   .   ./sample.cs:117: info: Metrics per 'testClass3<T>' region
+        	Region name    : testClass3<T>
+        	Region type    : class
+        	Offsets        : 2591-2622
+        	Line numbers   : 117-119
+        	Modified       : None
+
+.   .   ./sample.cs:121: info: Metrics per 'testClass4<T>' region
+        	Region name    : testClass4<T>
+        	Region type    : class
+        	Offsets        : 2628-2660
+        	Line numbers   : 121-123
+        	Modified       : None
+
+.   .   ./sample.cs:125: info: Metrics per 'testClass5<T,S>' region
+        	Region name    : testClass5<T,S>
+        	Region type    : class
+        	Offsets        : 2666-2700
+        	Line numbers   : 125-127
+        	Modified       : None
+
+.   .   ./sample.cs:129: info: Metrics per 'testClass6<T,S>' region
+        	Region name    : testClass6<T,S>
+        	Region type    : class
+        	Offsets        : 2706-2794
+        	Line numbers   : 129-134
+        	Modified       : None
+
+.   .   ./sample.cs:136: info: Metrics per 'testClass7<T>' region
+        	Region name    : testClass7<T>
+        	Region type    : class
+        	Offsets        : 2800-2857
+        	Line numbers   : 136-139
+        	Modified       : None
+
+.   .   ./sample.cs:141: info: Metrics per 'Interface<T,S,A,B,C>.testfunction18<T,S,A,V,F,G>' region
+        	Region name    : Interface<T,S,A,B,C>.testfunction18<T,S,A,V,F,G>
+        	Region type    : function
+        	Offsets        : 2863-3036
+        	Line numbers   : 141-145
+        	Modified       : None
+        	std.code.complexity:cyclomatic: 0
+
+./sample.cs:: info: Overall metrics for 'std.code.complexity:cyclomatic' metric
+	Average        : 0.0
+	Minimum        : 0
+	Maximum        : 0
+	Total          : 0.0
+	Distribution   : 18 regions in total (including 0 suppressed)
+	  Metric value : Ratio : R-sum : Number of regions
+	             0 : 1.000 : 1.000 : 18	||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
+
+

+ 0 - 0
tests/general/test_std_code_java.py


部分文件因文件數量過多而無法顯示