Co3758BinarySearch_oiio.TestCaseRoutine C# (CSharp) Method

TestCaseRoutine() public method

public TestCaseRoutine ( ) : Boolean
return Boolean
 public Boolean TestCaseRoutine()  
   {
   Boolean bToReturn = true;  
   String sLoc="Loc_gub200";
   Array aAsArray;
   Int32
     aa
     ,iCountCatches = 0
     ,iFoundIdx
     ,iSourceIdx;
   short[] i16Arr = { Int16.MinValue ,-12345 ,-2 ,-1,-1 ,0 ,1 ,2 ,12345 ,Int16.MaxValue };
   short[] i16DescArr = { Int16.MaxValue ,12345 ,2 ,1,1 ,0 ,-1 ,-2 ,-12345 ,Int16.MinValue };
   int[] i32Arr = { Int32.MinValue ,-12345 ,-2 ,-1 ,0 ,1 ,2 ,12345 ,Int32.MaxValue} ;
   long[] i64Arr = { Int64.MinValue ,Int64.MinValue ,-654321,-12345 ,-2 ,-1 ,0 ,1 ,2 ,12345 ,654321 ,Int64.MaxValue ,Int64.MaxValue };
   double[] f8Arr1 = { Double.NegativeInfinity ,Double.MinValue ,-Double.Epsilon ,(double)0.0 ,(double)0.0 ,Double.Epsilon ,Double.MaxValue ,Double.PositiveInfinity };
   double[] f8Arr2 = { Double.NaN };
   double[] f8Arr3 = { };
   UIntPtr[] uipArr = { new UIntPtr((UInt32)0) ,new UIntPtr((UInt32)654321) ,new UIntPtr((UInt32)654321) ,new UIntPtr((UInt32)987654321) };
   sLoc="Loc_gub210";
   try
     { 
     aAsArray = Array.CreateInstance( typeof( short ) ,i16Arr.Length );
     for ( aa=0 ;aa<i16Arr.Length ;aa++ )
       {
       aAsArray.SetValue( (short)i16Arr[aa] ,aa );
       }
     sLoc="Loc_gub220";
     for ( aa=0 ;aa<i16Arr.Length ;aa++ )
       {
       iSourceIdx = aa;
       iFoundIdx = Array.BinarySearch
	 (
	  i16Arr
	  ,0 ,i16Arr.Length
	  ,(short)i16Arr[iSourceIdx] );
       sLoc="Loc_gub230";
       if ( (short)i16Arr[iFoundIdx] != (short)i16Arr[iSourceIdx] )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_gub321:  i16Arr ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       sLoc="Loc_gub240";
       iFoundIdx = Array.BinarySearch
	 (
	  aAsArray
	  ,0 ,aAsArray.Length
	  ,(short)( aAsArray.GetValue( iSourceIdx ) )
	  );
       sLoc="Loc_gub250";
       if ( (short)aAsArray.GetValue(iFoundIdx) != (short)aAsArray.GetValue(iSourceIdx) )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_gub456:  aAsArray-i16Arr ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       sLoc="Loc_gub260";
       }
     aAsArray = Array.CreateInstance( typeof( short ) ,i16DescArr.Length );
     for ( aa=0 ;aa<i16DescArr.Length ;aa++ )
       {
       aAsArray.SetValue( (short)i16DescArr[aa] ,aa );
       }
     iCountCatches = 0;
     for ( aa=0 ;aa<i16DescArr.Length ;aa++ )
       {
       iSourceIdx = aa;
       try
	 {
	 iFoundIdx = Array.BinarySearch
	   (
	    i16DescArr
	    ,0 ,i16DescArr.Length
	    ,(short)i16DescArr[iSourceIdx] );
	 if ( (short)i16DescArr[iFoundIdx] != (short)i16DescArr[iSourceIdx] )
	   {
	   bToReturn = false;
	   Console.WriteLine( "Error_sot321:  i16DescArr ,"
			      + "iSourceIdx=="
			      + iSourceIdx.ToString() +" ,iFoundIdx=="
			      + iFoundIdx.ToString() );
	   }
	 }catch( IndexOutOfRangeException  )
	   { ++iCountCatches; }
       sLoc="Loc_sot310";
       try
	 {
	 iFoundIdx = Array.BinarySearch
	   (
	    aAsArray
	    ,0 ,aAsArray.Length
	    ,(short)( aAsArray.GetValue( iSourceIdx ) )
	    );
	 if ( (short)aAsArray.GetValue(iFoundIdx) != (short)aAsArray.GetValue(iSourceIdx) )
	   {
	   bToReturn = false;
	   Console.WriteLine( "Error_sot456:  aAsArray-i16DescArr ,"
			      + "iSourceIdx=="
			      + iSourceIdx.ToString() +" ,iFoundIdx=="
			      + iFoundIdx.ToString() );
	   }
	 }catch( IndexOutOfRangeException  )
	   { ++iCountCatches; }
       }
     if ( iCountCatches <= 0 )
       {
       bToReturn = false;
       Console.WriteLine( "Error_sot436:  Expected exception not thrown, for Desc sort?" );
       }
     aAsArray = Array.CreateInstance( typeof( long ) ,i64Arr.Length );
     for ( aa=0 ;aa<i64Arr.Length ;aa++ )
       {
       aAsArray.SetValue( (long)i64Arr[aa] ,aa );
       }
     for ( aa=0 ;aa<i64Arr.Length ;aa++ )
       {
       iSourceIdx = aa;
       iFoundIdx = Array.BinarySearch
	 (
	  i64Arr
	  ,0 ,i64Arr.Length
	  ,(long)i64Arr[iSourceIdx] );
       if ( (long)i64Arr[iFoundIdx] != (long)i64Arr[iSourceIdx] )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_zek321:  i64Arr ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       sLoc="Loc_zek310";
       iFoundIdx = Array.BinarySearch
	 (
	  aAsArray
	  ,0 ,aAsArray.Length
	  ,(long)( aAsArray.GetValue( iSourceIdx ) )
	  );
       if ( (long)aAsArray.GetValue(iFoundIdx) != (long)aAsArray.GetValue(iSourceIdx) )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_zek456:  aAsArray-i64Arr ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       }
     aAsArray = Array.CreateInstance( typeof( UIntPtr ) ,uipArr.Length );
     for ( aa=0 ;aa<uipArr.Length ;aa++ )
       {
       aAsArray.SetValue( (UIntPtr)uipArr[aa] ,aa );
       }
     sLoc="Loc_pit230";
     aAsArray = Array.CreateInstance( typeof( double ) ,f8Arr1.Length );
     for ( aa=0 ;aa<f8Arr1.Length ;aa++ )
       {
       aAsArray.SetValue( (double)f8Arr1[aa] ,aa );
       }
     for ( aa=0 ;aa<f8Arr1.Length ;aa++ )
       {
       iSourceIdx = aa;
       iFoundIdx = Array.BinarySearch
	 (
	  f8Arr1
	  ,0 ,f8Arr1.Length
	  ,(double)f8Arr1[iSourceIdx] );
       if ( (double)f8Arr1[iFoundIdx] != (double)f8Arr1[iSourceIdx] )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_dib321:  f8Arr1 ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       sLoc="Loc_dib310";
       iFoundIdx = Array.BinarySearch
	 (
	  aAsArray
	  ,0 ,aAsArray.Length
	  ,(double)( aAsArray.GetValue( iSourceIdx ) )
	  );
       if ( (double)aAsArray.GetValue(iFoundIdx) != (double)aAsArray.GetValue(iSourceIdx) )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_dib456:  aAsArray-f8Arr1 ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       }
     aAsArray = Array.CreateInstance( typeof( double ) ,f8Arr2.Length );
     for ( aa=0 ;aa<f8Arr2.Length ;aa++ )
       {
       aAsArray.SetValue( (double)f8Arr2[aa] ,aa );
       }
     for ( aa=0 ;aa<f8Arr2.Length ;aa++ )
       {
       iSourceIdx = aa;
       iFoundIdx = Array.BinarySearch
	 (
	  f8Arr2
	  ,0 ,f8Arr2.Length
	  ,(double)f8Arr2[iSourceIdx] );
       if ( (double)f8Arr2[iFoundIdx] != (double)f8Arr2[iSourceIdx] )
	 {
	 if ( ! Double.IsNaN( (double)f8Arr2[iSourceIdx] ) )
	   {
	   bToReturn = false;
	   Console.WriteLine( "Error_fad321:  f8Arr2 ,"
			      + "iSourceIdx=="
			      + iSourceIdx.ToString() +" ,iFoundIdx=="
			      + iFoundIdx.ToString() );
	   }
	 }
       sLoc="Loc_fad310";
       iFoundIdx = Array.BinarySearch
	 (
	  aAsArray
	  ,0 ,aAsArray.Length
	  ,(double)( aAsArray.GetValue( iSourceIdx ) )
	  );
       if ( (double)aAsArray.GetValue(iFoundIdx) != (double)aAsArray.GetValue(iSourceIdx) )
	 {
	 if ( ! Double.IsNaN( (double)aAsArray.GetValue(iSourceIdx) ) )
	   {
	   bToReturn = false;
	   Console.WriteLine( "Error_fad456:  aAsArray-f8Arr2 ,"
			      + "iSourceIdx=="
			      + iSourceIdx.ToString() +" ,iFoundIdx=="
			      + iFoundIdx.ToString() );
	   }
	 }
       }
     aAsArray = Array.CreateInstance( typeof( double ) ,f8Arr3.Length );
     for ( aa=0 ;aa<f8Arr3.Length ;aa++ )
       {
       aAsArray.SetValue( (double)f8Arr3[aa] ,aa );
       }
     for ( aa=0 ;aa<f8Arr3.Length ;aa++ )
       {
       iSourceIdx = aa;
       iFoundIdx = Array.BinarySearch
	 (
	  f8Arr3
	  ,0 ,f8Arr3.Length
	  ,(double)f8Arr3[iSourceIdx] );
       if ( (double)f8Arr3[iFoundIdx] != (double)f8Arr3[iSourceIdx] )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_wex321:  f8Arr3 ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       sLoc="Loc_wex310";
       iFoundIdx = Array.BinarySearch
	 (
	  aAsArray
	  ,0 ,aAsArray.Length
	  ,(double)( aAsArray.GetValue( iSourceIdx ) )
	  );
       if ( (double)aAsArray.GetValue(iFoundIdx) != (double)aAsArray.GetValue(iSourceIdx) )
	 {
	 bToReturn = false;
	 Console.WriteLine( "Error_wex456:  aAsArray-f8Arr3 ,"
			    + "iSourceIdx=="
			    + iSourceIdx.ToString() +" ,iFoundIdx=="
			    + iFoundIdx.ToString() );
	 }
       }
     }
   catch ( Exception exc839 )
     {
     bToReturn = false;
     Console.WriteLine( "Error_wib204:  Unexpected Exception near sLoc="+ sLoc );
     Console.WriteLine( exc839.ToString() );
     }
   return bToReturn;
   } 
 internal static readonly Char[]   M_cArr   = {'j', 'i', 'h', 'g', 'f', 'e', 'd', 'c', 'b', 'a'};
Co3758BinarySearch_oiio