1212
1313
1414class  CompareMismatch (ValueError ):
15+ 
1516    def  __init__ (self , name , mismatch ):
1617        super (CompareMismatch , self ).__init__ (name , mismatch )
1718        self .name  =  name 
@@ -22,6 +23,7 @@ def __str__(self):
2223
2324
2425class  Compare :
26+ 
2527    @staticmethod  
2628    def  __compare_two (name , content , std , grader ):
2729        (result , info ) =  CYaRonGraders .invoke (grader , content , std )
@@ -67,21 +69,20 @@ def output(cls, *files, **kwargs):
6769        max_workers  =  kwargs ["max_workers" ]
6870        job_pool  =  kwargs ["job_pool" ]
6971        if  kwargs ["stop_on_incorrect" ] is  not   None :
70-             log .warn ("parameter stop_on_incorrect is deprecated and has no effect." )
72+             log .warn (
73+                 "parameter stop_on_incorrect is deprecated and has no effect." )
7174
7275        if  (max_workers  is  None  or  max_workers  >=  0 ) and  job_pool  is  None :
7376            max_workers  =  cls .__normal_max_workers (max_workers )
7477            try :
7578                from  concurrent .futures  import  ThreadPoolExecutor 
7679
7780                with  ThreadPoolExecutor (max_workers = max_workers ) as  job_pool :
78-                     return  cls .output (
79-                         * files ,
80-                         std = std ,
81-                         grader = grader ,
82-                         max_workers = max_workers ,
83-                         job_pool = job_pool 
84-                     )
81+                     return  cls .output (* files ,
82+                                       std = std ,
83+                                       grader = grader ,
84+                                       max_workers = max_workers ,
85+                                       job_pool = job_pool )
8586            except  ImportError :
8687                pass 
8788
@@ -124,47 +125,44 @@ def program(cls, *programs, **kwargs):
124125        max_workers  =  kwargs ["max_workers" ]
125126        job_pool  =  kwargs ["job_pool" ]
126127        if  kwargs ["stop_on_incorrect" ] is  not   None :
127-             log .warn ("parameter stop_on_incorrect is deprecated and has no effect." )
128+             log .warn (
129+                 "parameter stop_on_incorrect is deprecated and has no effect." )
128130
129131        if  (max_workers  is  None  or  max_workers  >=  0 ) and  job_pool  is  None :
130132            max_workers  =  cls .__normal_max_workers (max_workers )
131133            try :
132134                from  concurrent .futures  import  ThreadPoolExecutor 
133135
134136                with  ThreadPoolExecutor (max_workers = max_workers ) as  job_pool :
135-                     return  cls .program (
136-                         * programs ,
137-                         input = input ,
138-                         std = std ,
139-                         std_program = std_program ,
140-                         grader = grader ,
141-                         max_workers = max_workers ,
142-                         job_pool = job_pool 
143-                     )
137+                     return  cls .program (* programs ,
138+                                        input = input ,
139+                                        std = std ,
140+                                        std_program = std_program ,
141+                                        grader = grader ,
142+                                        max_workers = max_workers ,
143+                                        job_pool = job_pool )
144144            except  ImportError :
145145                pass 
146146
147147        if  not  isinstance (input , IO ):
148-             raise  TypeError (
149-                 "expect {}, got {}" . format ( type (IO ).__name__ ,  type ( input ). __name__ ) 
150-             )
148+             raise  TypeError ("expect {}, got {}" . format ( 
149+                 type (IO ).__name__ ,
150+                  type ( input ). __name__ ) )
151151        input .flush_buffer ()
152152        input .input_file .seek (0 )
153153
154154        if  std_program  is  not   None :
155155
156156            def  get_std ():
157-                 with  open (
158-                     os .dup (input .input_file .fileno ()), "r" , newline = "\n " 
159-                 ) as  input_file :
157+                 with  open (os .dup (input .input_file .fileno ()), "r" ,
158+                           newline = "\n " ) as  input_file :
160159                    content  =  make_unicode (
161160                        subprocess .check_output (
162161                            std_program ,
163162                            shell = (not  list_like (std_program )),
164163                            stdin = input .input_file ,
165164                            universal_newlines = True ,
166-                         )
167-                     )
165+                         ))
168166                    input_file .seek (0 )
169167                return  content 
170168
@@ -188,24 +186,19 @@ def get_std():
188186
189187        def  do (program_name ):
190188            timeout  =  None 
191-             if  (
192-                 list_like (program_name )
193-                 and  len (program_name ) ==  2 
194-                 and  int_like (program_name [- 1 ])
195-             ):
189+             if  (list_like (program_name ) and  len (program_name ) ==  2 
190+                     and  int_like (program_name [- 1 ])):
196191                program_name , timeout  =  program_name 
197-             with  open (
198-                 os .dup (input .input_file .fileno ()), "r" , newline = "\n " 
199-             ) as  input_file :
192+             with  open (os .dup (input .input_file .fileno ()), "r" ,
193+                       newline = "\n " ) as  input_file :
200194                if  timeout  is  None :
201195                    content  =  make_unicode (
202196                        subprocess .check_output (
203197                            program_name ,
204198                            shell = (not  list_like (program_name )),
205199                            stdin = input_file ,
206200                            universal_newlines = True ,
207-                         )
208-                     )
201+                         ))
209202                else :
210203                    content  =  make_unicode (
211204                        subprocess .check_output (
@@ -214,8 +207,7 @@ def do(program_name):
214207                            stdin = input_file ,
215208                            universal_newlines = True ,
216209                            timeout = timeout ,
217-                         )
218-                     )
210+                         ))
219211                input_file .seek (0 )
220212            cls .__compare_two (program_name , content , std , grader )
221213
0 commit comments