/[escript]/trunk/escriptcore/test/python/test_util_base.py
ViewVC logotype

Diff of /trunk/escriptcore/test/python/test_util_base.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 6453 by jfenwick, Mon Jan 9 03:17:00 2017 UTC revision 6457 by jfenwick, Tue Jan 10 02:05:39 2017 UTC
# Line 867  class Test_util_values(unittest.TestCase Line 867  class Test_util_values(unittest.TestCase
867              ref=v[3]              ref=v[3]
868              oraclecheck=v[4]              oraclecheck=v[4]
869              description=v[5]              description=v[5]
870              with self.assertRaises(TypeError):                          with self.assertRaises(StandardError) as err:  
871                  res=eval(op)                                  res=eval(op)
872                # unfortunately, we don't return a single exception type in this case
873                self.assertTrue(isinstance(err.exception, TypeError) or isinstance(err.exception, RuntimeError), "Exception was raised but it was of unexpected type ("+str(type(err.exception))+")")
874            
875      def execute_t_params(self, pars):      def execute_t_params(self, pars):
876          for v in pars:          for v in pars:
# Line 917  class Test_util_values(unittest.TestCase Line 919  class Test_util_values(unittest.TestCase
919                  misccheck=step[2]                  misccheck=step[2]
920                  ref=step[3]                  ref=step[3]
921                  oraclecheck=step[4]                  oraclecheck=step[4]
922                  with self.assertRaises(TypeError):                              with self.assertRaises(StandardError) as err:  
923                      res=eval(op)                        res=eval(op)
924                    self.assertTrue(isinstance(err.exception, TypeError) or isinstance(err.exception, RuntimeError), "Exception was raised but it was of unexpected type ("+str(type(err.exception))+")")                
925                  tagcount+=1                  tagcount+=1
926    
927      def generate_operation_test_batch(self, supportcplx, opstring, misccheck, oraclecheck, opname, update1, update2, input_trans=None, data_only=False, multisteptag=True):      def generate_operation_test_batch(self, supportcplx, opstring, misccheck, oraclecheck, opname, update1, update2, input_trans=None, data_only=False, multisteptag=True, minrank=0, maxrank=4):
928          """          """
929          supportcplx is a boolean indicating whether complex operations should be checked for values (True)          supportcplx is a boolean indicating whether complex operations should be checked for values (True)
930               or tested to see if they raise (False)               or tested to see if they raise (False)
# Line 954  class Test_util_values(unittest.TestCase Line 957  class Test_util_values(unittest.TestCase
957                  f1=input_trans(f1)                  f1=input_trans(f1)
958                  f2=input_trans(f2)                                  f2=input_trans(f2)                
959                  epars.append((f1, opstring, misccheck, numpy.array(f2), oraclecheck, opname+" - complex scalar"))                  epars.append((f1, opstring, misccheck, numpy.array(f2), oraclecheck, opname+" - complex scalar"))
960          if supportcplx:          for c in (False, True):
             fields=(False, True)  
         else:  
             fields=(False,)  
         for c in fields:  
961              dest=pars              dest=pars
962              if c:              if c:
963                  cs="complex "                  cs="complex "
964                    if not supportcplx:
965                        dest=epars
966              else:              else:
967                  cs=""                  cs=""
968              if c and not supportcplx:              for rank in range(minrank, maxrank+1):
                 dest=epars  
             for rank in range(4):  
969                  if not data_only:                  if not data_only:
970                      (a, r)=self.get_array_input1(rank, c)                      (a, r)=self.get_array_input1(rank, c)
971                      a=input_trans(a)                      a=input_trans(a)
# Line 989  class Test_util_values(unittest.TestCase Line 988  class Test_util_values(unittest.TestCase
988          del epars          del epars
989          tpars=[]    # tagged versions          tpars=[]    # tagged versions
990          epars=[]          epars=[]
991          for c in fields:          for c in (False, True):
992              dest=tpars              dest=tpars
993              if c:              if c:
994                  cs="complex "                  cs="complex "
995                    if not supportcplx:
996                        dest=epars                
997              else:              else:
998                  cs=""                  cs=""
999              if c and not supportcplx:              for rank in range(minrank, maxrank+1):
                 dest=epars                  
             for rank in range(4):  
1000                  test=[opname+" - "+cs+"tagged rank "+str(rank),]                  test=[opname+" - "+cs+"tagged rank "+str(rank),]
1001                  (a, r)=self.get_tagged_input1(rank, self.functionspace, c)                  (a, r)=self.get_tagged_input1(rank, self.functionspace, c)
1002                  a=input_trans(a)                  a=input_trans(a)
# Line 1020  class Test_util_values(unittest.TestCase Line 1019  class Test_util_values(unittest.TestCase
1019          self.execute_t_throws(epars)                  self.execute_t_throws(epars)        
1020    
1021    
1022      def generate_operation_test_batch_large(self, supportcplx, opstring, misccheck, oraclecheck, opname, update1, update2, input_trans=None, data_only=False, multisteptag=True):      def generate_operation_test_batch_large(self, supportcplx, opstring, misccheck, oraclecheck, opname, update1, update2, input_trans=None, data_only=False, multisteptag=True, minrank=0, maxrank=4):
1023          """          """
1024          (At time of writing) This is the same as generate_operation_test_batch but using          (At time of writing) This is the same as generate_operation_test_batch but using
1025          inputL to add some large (magnitude) values into the mix.          inputL to add some large (magnitude) values into the mix.
# Line 1055  class Test_util_values(unittest.TestCase Line 1054  class Test_util_values(unittest.TestCase
1054                  f1=input_trans(f1)                  f1=input_trans(f1)
1055                  f2=input_trans(f2)                                  f2=input_trans(f2)                
1056                  epars.append((f1, opstring, misccheck, numpy.array(f2), oraclecheck, opname+" - complex scalar"))                  epars.append((f1, opstring, misccheck, numpy.array(f2), oraclecheck, opname+" - complex scalar"))
1057          if supportcplx:          for c in (False, True):
             fields=(False, True)  
         else:  
             fields=(False,)  
         for c in fields:  
1058              dest=pars              dest=pars
1059              if c:              if c:
1060                  cs="complex "                  cs="complex "
1061                    if not supportcplx:
1062                        dest=epars
1063              else:              else:
1064                  cs=""                  cs=""
1065              if c and not supportcplx:              for rank in range(minrank, maxrank+1):
                 dest=epars  
             for rank in range(4):  
1066                  if not data_only:                  if not data_only:
1067                      (a, r)=self.get_array_inputL(rank, c)                      (a, r)=self.get_array_inputL(rank, c)
1068                      a=input_trans(a)                      a=input_trans(a)
# Line 1090  class Test_util_values(unittest.TestCase Line 1085  class Test_util_values(unittest.TestCase
1085          del epars          del epars
1086          tpars=[]    # tagged versions          tpars=[]    # tagged versions
1087          epars=[]          epars=[]
1088          for c in fields:          for c in (False, True):
1089              dest=tpars              dest=tpars
1090              if c:              if c:
1091                  cs="complex "                  cs="complex "
1092                    if not supportcplx:
1093                        dest=epars
1094              else:              else:
1095                  cs=""                  cs=""            
1096              if c and not supportcplx:              for rank in range(minrank, maxrank+1):
                 dest=epars                  
             for rank in range(4):  
1097                  test=[opname+" - "+cs+"tagged rank "+str(rank),]                  test=[opname+" - "+cs+"tagged rank "+str(rank),]
1098                  (a, r)=self.get_tagged_input1(rank, self.functionspace, c)                  (a, r)=self.get_tagged_input1(rank, self.functionspace, c)
1099                  a=input_trans(a)                  a=input_trans(a)

Legend:
Removed from v.6453  
changed lines
  Added in v.6457

  ViewVC Help
Powered by ViewVC 1.1.26