@@ -21,7 +21,7 @@ def check_range(self, l, n):
2121 seen = set ({})
2222 errors = []
2323 for e in l :
24- if e < 0 or e > (n - 1 ) or e in seen :
24+ if e < 0 or e > (n - 1 ) or e in seen :
2525 return False
2626
2727 return True
@@ -34,7 +34,7 @@ def check_equals(self, l):
3434 counter [e ] += 1
3535 else :
3636 counter [e ] = 1
37- max_equals = max (counter , counter .get )
37+ max_equals = max (counter , key = counter .get )
3838 for i , e in enumerate (l ):
3939 if e != max_equals :
4040 errors .append (i )
@@ -55,8 +55,8 @@ def check_power(self, power_folder, result_files):
5555 power_files = os .listdir (power_result_folder )
5656 node_results = [file for file in power_files if file .startswith ("node" )]
5757 sw_results = [file for file in power_files if file .startswith ("sw" )]
58- node_idx = [os .path .splitext (os .path .basename (file ))[1 ] for file in node_results ]
59- sw_idx = [os .path .splitext (os .path .basename (file ))[1 ] for file in node_results ]
58+ node_idx = [int ( os .path .splitext (os .path .basename (file ))[0 ]. split ( '_' )[ - 1 ]) for file in node_results ]
59+ sw_idx = [int ( os .path .splitext (os .path .basename (file ))[0 ]. split ( '_' )[ - 1 ]) for file in sw_results ]
6060
6161 if len (power_files ) > len (node_results ) + len (sw_results ):
6262 logging .warning ("Detected %d total files in directory %s, but some do not conform" , len (power_files ), power_result_folder )
@@ -65,7 +65,7 @@ def check_power(self, power_folder, result_files):
6565 logging .warning ("Bad naming of node power files in directory %s, expected to be node_x with x in range [0, %d]" , power_result_folder , len (node_results )- 1 )
6666 errors_found += 1
6767 errors_set .add (result_name )
68- if not self .check_range (sw_idx , len (sw_lens )):
68+ if not self .check_range (sw_idx , len (sw_results )):
6969 logging .warning ("Bad naming of sw power files in directory %s, expected to be sw_x with x in range [0, %d]" , power_result_folder , len (sw_results )- 1 )
7070 errors_found += 1
7171 errors_set .add (result_name )
@@ -80,11 +80,17 @@ def check_power(self, power_folder, result_files):
8080
8181 result_names = [os .path .splitext (os .path .basename (result_file ))[0 ] for result_file in result_files ]
8282
83- valid , errors = self .check_mode ( node_results )
83+ valid , errors = self .check_equals ( node_lens )
8484 node_errors = set ([result_names [error ] for error in errors ])
85-
86- valid , errors = self .check_mode (sw_results )
85+ for error_result in [result_names [error ] for error in errors ]:
86+ logging .warning ("Inconsistent number of nodes in directory %s/%s" , power_folder , error_result )
87+ logging .warning ("Directory %s/%s does not comply" , power_folder , error_result )
88+
89+ valid , errors = self .check_equals (sw_lens )
8790 sw_errors = set ([result_names [error ] for error in errors ])
91+ for error_result in [result_names [error ] for error in errors ]:
92+ logging .warning ("Inconsistent number of sw in directory %s/%s" , power_folder , error_result )
93+ logging .warning ("Directory %s/%s does not comply" , power_folder , error_result )
8894
8995 errors_set = errors_set | node_errors | sw_errors
9096 return errors_found == 0 , errors_set
0 commit comments