home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 January / Chip_2001-01_cd1.bin / tema / mysql / mysql-3.23.28g-win-source.exe / strings / c_test4.c < prev    next >
C/C++ Source or Header  |  1999-11-16  |  1KB  |  55 lines

  1. /* simple test if sort works correctly for sorting with my_strncoll */
  2.  
  3. #ifdef DBUG_OFF
  4. #undef DBUG_OFF
  5. #endif
  6.  
  7. #include <global.h>
  8. #include <my_sys.h>
  9. #include "m_ctype.h"
  10. #include "m_string.h"
  11.  
  12. #define FROM 'm'
  13. #define TO 'z'
  14.  
  15. main(int argc,char *argv[])
  16. {
  17.   int i,j,k,l,count,loop,errors;
  18.   char a[10],b[10];
  19.   DBUG_ENTER ("main");
  20.   DBUG_PROCESS (argv[0]);
  21.  
  22.   count=loop=errors=0;
  23.   for (i=FROM ; i < TO ; i++)
  24.   {
  25.     for (j=FROM ; j < TO ; j++)
  26.     {
  27.       loop++;
  28.       for (k=FROM ; k < TO ; k++)
  29.       {
  30.     for (l=FROM ; l < TO ; l++)
  31.     {
  32.       count++;
  33.       a[0]=i; a[1]=j;
  34.       b[0]=k; b[1]=l;
  35.       a[2]=(char) count; b[2]= (char) loop;    /* Catch overflows */
  36.       if (my_strnncoll(a, 2, b, 2) != 
  37.           -my_strnncoll(b, 2, a, 2))
  38.       {
  39.         errors++;
  40.         printf("my_strncoll failed for:  %2.2s  %2.2s:  %d != %d\n",
  41.            my_strnncoll(a, 2, b, 2),
  42.            -my_strnncoll(b, 2, a, 2));
  43.         if (errors++ > 10)
  44.         {
  45.           printf("aborted\n");
  46.           DBUG_RETURN(1);
  47.         }
  48.       }
  49.     }
  50.       }
  51.     }
  52.   }
  53.   DBUG_RETURN(errors != 0);
  54. }
  55.