Back to index

lightning-sunbird  0.9+nobinonly
Functions
unitest.c File Reference
#include "unistring.h"
#include <assert.h>

Go to the source code of this file.

Functions

int main (int argc, char *argv[])

Function Documentation

int main ( int  argc,
char *  argv[] 
)

Definition at line 8 of file unitest.c.

{
  UNICHAR dest[6], dest2[6];

  printf("\nTesting ucscopy and ucslen ...\n");

  ucscopy(dest, "abcdef", 0);
  printf("ucscopy(dest, \"abcdef\",    0)\n");

  ucscopy(dest, "abcdef", 6);
  printf("ucscopy(dest, \"abcdef\",    6): dest=");
  ucsprint(stdout, dest, 6);
  printf(" (abcdef)\n");

  ucscopy(dest, "",       6);
  printf("ucscopy(dest, \"\",          6): dest=");
  ucsprint(stdout, dest, 6);
  printf(" (^@^@^@^@^@^@)\n");

  printf("ucslen(dest) = %d (0)\n", ucslen(dest));

  ucscopy(dest, "babc",    6);
  printf("ucscopy(dest, \"babc\",       6): dest=");
  ucsprint(stdout, dest, 6);
  printf(" (babc^@^@)\n");

  printf("ucslen(dest) = %d (4)\n", ucslen(dest));

  printf("\nTesting ucschr ...\n");

  printf("*ucschr(\"babc\", U_NUL) = '%c',%d ('',4)\n",
         (char) *ucschr(dest, U_NUL), ucschr(dest, U_NUL)-dest);
  
  printf("*ucschr(\"babc\", U_b_CHAR) = '%c',%d ('b',0)\n",
         (char) *ucschr(dest, U_b_CHAR), ucschr(dest, U_b_CHAR)-dest);
  
  printf("*ucschr(\"babc\", U_a_CHAR) = '%c',%d ('a',1)\n",
         (char) *ucschr(dest, U_a_CHAR), ucschr(dest, U_a_CHAR)-dest);
  
  printf("*ucschr(\"babc\", U_c_CHAR) = '%c',%d ('c',3)\n",
         (char) *ucschr(dest, U_c_CHAR), ucschr(dest, U_c_CHAR)-dest);

  printf("ucschr(\"babc\", U_d_CHAR) = 0x%x (0x0)\n", ucschr(dest, U_d_CHAR));
  
  printf("\nTesting ucsrchr ...\n");

  printf("*ucsrchr(\"babc\", U_NUL) = '%c',%d ('',4)\n",
         (char) *ucsrchr(dest, U_NUL), ucsrchr(dest, U_NUL)-dest);

  printf("*ucsrchr(\"babc\", U_b_CHAR) = '%c',%d ('b',2)\n",
         (char) *ucsrchr(dest, U_b_CHAR), ucsrchr(dest, U_b_CHAR)-dest);

  printf("*ucsrchr(\"babc\", U_a_CHAR) = '%c', %d ('a',1)\n",
         (char) *ucsrchr(dest, U_a_CHAR), ucsrchr(dest, U_a_CHAR)-dest);

  printf("*ucschr(\"babc\", U_c_CHAR) = '%c',%d ('c',3)\n",
         (char) *ucschr(dest, U_c_CHAR), ucschr(dest, U_c_CHAR)-dest);

  printf("ucsrchr(\"babc\", U_d_CHAR) = 0x%x (0x0)\n", ucsrchr(dest, U_d_CHAR));

  printf("\nTesting ucscmp ...\n");
  ucscopy(dest,  "", 6);
  ucscopy(dest2, "", 6);
  printf("ucscmp(\"\",\"\") = %d (0)\n", ucscmp(dest,dest));

  ucscopy(dest,  "abc", 6);
  printf("ucscmp(\"abc\",\"\") = %d (97)\n", ucscmp(dest,dest2));
  printf("ucscmp(\"\",\"abc\") = %d (-97)\n", ucscmp(dest2,dest));

  ucscopy(dest2, "abe", 6);
  printf("ucscmp(\"abc\",\"abc\") = %d (0)\n", ucscmp(dest,dest));
  printf("ucscmp(\"abc\",\"abe\") = %d (-2)\n", ucscmp(dest,dest2));
  printf("ucscmp(\"abe\",\"abc\") = %d (2)\n", ucscmp(dest2,dest));

  ucscopy(dest2, "abcd", 6);
  printf("ucscmp(\"abc\",\"abcd\") = %d (-100)\n", ucscmp(dest,dest2));
  printf("ucscmp(\"abcd\",\"abc\") = %d (100)\n", ucscmp(dest2,dest));

  printf("\nTesting ucsncmp ...\n");
  ucscopy(dest,  "", 6);
  ucscopy(dest2, "", 6);
  printf("ucsncmp(\"\",\"\",6) = %d (0)\n", ucsncmp(dest,dest,6));

  ucscopy(dest,  "abc", 6);
  printf("ucsncmp(\"abc\",\"\",6) = %d (97)\n", ucsncmp(dest,dest2,6));
  printf("ucsncmp(\"\",\"abc\",6) = %d (-97)\n", ucsncmp(dest2,dest,6));

  ucscopy(dest2, "abe", 6);
  printf("ucsncmp(\"abc\",\"abc\",4) = %d (0)\n", ucsncmp(dest,dest,4));
  printf("ucsncmp(\"abc\",\"abc\",3) = %d (0)\n", ucsncmp(dest,dest,3));

  printf("ucsncmp(\"abc\",\"abe\",5) = %d (-2)\n", ucsncmp(dest,dest2,5));
  printf("ucsncmp(\"abc\",\"abe\",4) = %d (-2)\n", ucsncmp(dest,dest2,4));
  printf("ucsncmp(\"abc\",\"abe\",3) = %d (-2)\n", ucsncmp(dest,dest2,3));
  printf("ucsncmp(\"abc\",\"abe\",2) = %d (0)\n", ucsncmp(dest,dest2,2));
  printf("ucsncmp(\"abc\",\"abe\",1) = %d (0)\n", ucsncmp(dest,dest2,1));
  printf("ucsncmp(\"abc\",\"abe\",0) = %d (0)\n", ucsncmp(dest,dest2,0));

  printf("ucsncmp(\"abe\",\"abc\",4) = %d (2)\n", ucsncmp(dest2,dest,4));
  printf("ucsncmp(\"abe\",\"abc\",3) = %d (2)\n", ucsncmp(dest2,dest,3));

  ucscopy(dest,  "abcde", 6);
  printf("ucsncmp(\"abcde\",\"abe\",2) = %d (0)\n", ucsncmp(dest,dest2,2));
  printf("ucsncmp(\"abcde\",\"abe\",3) = %d (-2)\n", ucsncmp(dest,dest2,3));
  printf("ucsncmp(\"abcde\",\"abe\",4) = %d (-2)\n", ucsncmp(dest,dest2,4));
  printf("ucsncmp(\"abe\",\"abcde\",2) = %d (0)\n", ucsncmp(dest2,dest,2));
  printf("ucsncmp(\"abe\",\"abcde\",6) = %d (2)\n", ucsncmp(dest2,dest,6));

  printf("\nTesting ucsncpy ...\n");
  ucscopy(dest2, "abcde", 5);

  ucsncpy(dest, dest2, 0);
  printf("ucsncpy(dest, \"abcde\",    0)\n");

  ucsncpy(dest, dest2, 5);
  printf("ucsncpy(dest, \"abcde\",    5): dest=");
  ucsprint(stdout, dest, 5);
  printf(" (abcde)\n");

  ucscopy(dest2, "", 6);
  ucsncpy(dest, dest2,       5);
  printf("ucsncpy(dest, \"\",         5): dest=");
  ucsprint(stdout, dest, 5);
  printf(" (^@^@^@^@^@)\n");

  ucscopy(dest2, "bab", 6);
  ucsncpy(dest, dest2,    5);
  printf("ucsncpy(dest, \"bab\",      5): dest=");
  ucsprint(stdout, dest, 5);
  printf(" (bab^@^@)\n");

  printf("\nTesting ucsstr ...\n");
  ucscopy(dest, "abc", 6);
  ucscopy(dest2, "", 6);
  printf("ucsstr(\"abc\",\"\") = %d (0)\n", ucsstr(dest, dest2)-dest);
  ucscopy(dest2, "a", 6);
  printf("ucsstr(\"abc\",\"a\") = %d (0)\n", ucsstr(dest, dest2)-dest);
  ucscopy(dest2, "ab", 6);
  printf("ucsstr(\"abc\",\"ab\") = %d (0)\n", ucsstr(dest, dest2)-dest);
  ucscopy(dest2, "abc", 6);
  printf("ucsstr(\"abc\",\"abc\") = %d (0)\n", ucsstr(dest, dest2)-dest);
  ucscopy(dest2, "bc", 6);
  printf("ucsstr(\"abc\",\"bc\") = %d (1)\n", ucsstr(dest, dest2)-dest);
  ucscopy(dest2, "c", 6);
  printf("ucsstr(\"abc\",\"c\") = %d (2)\n", ucsstr(dest, dest2)-dest);
  ucscopy(dest2, "d", 6);
  printf("ucsstr(\"abc\",\"d\") = 0x%x (0x0)\n", ucsstr(dest, dest2));
  ucscopy(dest2, "ac", 6);
  printf("ucsstr(\"abc\",\"ac\") = 0x%x (0x0)\n", ucsstr(dest, dest2));
  ucscopy(dest2, "acb", 6);
  printf("ucsstr(\"abc\",\"acb\") = 0x%x (0x0)\n", ucsstr(dest, dest2));
  ucscopy(dest2, "abcd", 6);
  printf("ucsstr(\"abc\",\"abcd\") = 0x%x (0x0)\n", ucsstr(dest, dest2));

  printf("\nTesting ucsspn ...\n");
  ucscopy(dest, "babc", 6);
  ucscopy(dest2, "", 6);
  printf("ucsspn(\"babc\",\"\") = %d (0)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "b", 6);
  printf("ucsspn(\"babc\",\"b\") = %d (1)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "ab", 6);
  printf("ucsspn(\"babc\",\"ab\") = %d (3)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "abc", 6);
  printf("ucsspn(\"babc\",\"abc\") = %d (4)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "cba", 6);
  printf("ucsspn(\"babc\",\"cba\") = %d (4)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "abcd", 6);
  printf("ucsspn(\"babc\",\"abcd\") = %d (4)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "abcde", 6);
  printf("ucsspn(\"babc\",\"abcde\") = %d (4)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "c", 6);
  printf("ucsspn(\"babc\",\"c\") = %d (0)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "d", 6);
  printf("ucsspn(\"babc\",\"d\") = %d (0)\n", ucsspn(dest, dest2));
  ucscopy(dest2, "cd", 6);
  printf("ucsspn(\"babc\",\"cd\") = %d (0)\n", ucsspn(dest, dest2));

  printf("\nTesting ucscspn ...\n");
  ucscopy(dest, "babc", 6);
  ucscopy(dest2, "", 6);
  printf("ucscspn(\"babc\",\"\") = %d (4)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "b", 6);
  printf("ucscspn(\"babc\",\"b\") = %d (0)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "ab", 6);
  printf("ucscspn(\"babc\",\"ab\") = %d (0)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "abc", 6);
  printf("ucscspn(\"babc\",\"abc\") = %d (0)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "cba", 6);
  printf("ucscspn(\"babc\",\"cba\") = %d (0)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "abcd", 6);
  printf("ucscspn(\"babc\",\"abcd\") = %d (0)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "abcde", 6);
  printf("ucscspn(\"babc\",\"abcde\") = %d (0)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "a", 6);
  printf("ucscspn(\"babc\",\"a\") = %d (1)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "c", 6);
  printf("ucscspn(\"babc\",\"c\") = %d (3)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "cd", 6);
  printf("ucscspn(\"babc\",\"cd\") = %d (3)\n", ucscspn(dest, dest2));
  ucscopy(dest2, "d", 6);
  printf("ucscspn(\"babc\",\"d\") = %d (4)\n", ucscspn(dest, dest2));

  return;
}

Here is the call graph for this function: