Пример #1
0
int ms_append_test(void)
{
  wchar_t wbuf[512];
  size_t cbbuf;
  khm_int32 code;
  int i;

  printf("khc_multi_string_append() test:\n");

  for(i=0; i<n_strings; i++) {
    cbbuf = sizeof(wbuf);
    khc_csv_to_multi_string(wbuf, &cbbuf, strings[i].csv);

    printf("MS[");
    print_ms(wbuf);
    printf("] + [foo]=[");
  
    cbbuf = sizeof(wbuf);
    code = khc_multi_string_append(wbuf, &cbbuf, L"foo");

    if(code) {
      printf(" returned %d\n", code);
      return code;
    }

    print_ms(wbuf);
    printf("]\n");

    printf("  byte length: %d\n", cbbuf);
  }
  return code;
}
Пример #2
0
int ms_append_test(void)
{
  wchar_t wbuf[512];
  size_t cbbuf;
  khm_int32 code;
  int i;

  for(i=0; i<n_strings; i++) {
    cbbuf = sizeof(wbuf);
    csv_to_multi_string(wbuf, &cbbuf, strings[i].csv);

    log(KHERR_DEBUG_1, "MS[");
    print_ms(wbuf);
    log(KHERR_DEBUG_1, "] + [foo]=[");

    cbbuf = sizeof(wbuf);
    code = multi_string_append(wbuf, &cbbuf, L"foo");

    if(code) {
      log(KHERR_DEBUG_1, " returned %d\n", code);
      return code;
    }

    print_ms(wbuf);
    log(KHERR_DEBUG_1, "]\n");

    log(KHERR_DEBUG_1, "  byte length: %d\n", cbbuf);
  }
  return code;
}
Пример #3
0
void
print_ms2(m_struct2 ms2)
{
    printf("ms2.i: %d, ms2.j: %d, ms2.k: %d\n", ms2.i, ms2.j, ms2.k);
    printf("ms2.str: ");
    print_str(ms2.str);
    printf("ms2.ms1:\n");
    print_ms(ms2.ms1);
    printf("ms2.ms2:\n");
    print_ms(ms2.ms2);
    printf("ms2.c1: %c, ms2.c2: %c, ms2.c3: %c\n", ms2.c1, ms2.c1, ms2.c3);
}
Пример #4
0
int main() 
{
    TimePoint<Sec> time_point_sec(Sec(4));
 
    // implicit cast, no precision loss
    TimePoint<Ms> time_point_ms(time_point_sec);
    print_ms(time_point_ms); // 4000 ms
 
    time_point_ms = TimePoint<Ms>(Ms(5756));
 
    // explicit cast, need when precision loss may happens
    // 5756 truncated to 5000
    time_point_sec = std::chrono::time_point_cast<Sec>(time_point_ms);
    print_ms(time_point_sec); // 5000 ms
}
Пример #5
0
int csv_to_ms_test(void) {
  wchar_t wbuf[512];
  int i;
  khm_int32 code = 0;
  size_t cbbuf;
  size_t cbr;
  size_t cbnull;

  printf("khc_csv_to_multi_string() test:\n");

  for(i=0; i<n_strings; i++) {
    cbbuf = sizeof(wbuf);
    printf("CSV:[%S]->", strings[i].csv);
    code = khc_csv_to_multi_string(NULL, &cbnull, strings[i].csv);
    code = khc_csv_to_multi_string(wbuf, &cbbuf, strings[i].csv);
    if(code) {
      printf(" returned %d\n", code);
      return code;
    }
    printf("MS[");
    print_ms(wbuf);
    printf("]");

    if(cbnull != cbbuf) {
      printf(" NULL length mismatch");
      return 1;
    }

    printf("\n");

    printf("  Byte length:%d\n", cbbuf);
  }

  return code;
}
Пример #6
0
int csv_to_ms_test(void) {
  wchar_t wbuf[512];
  int i;
  khm_int32 code = 0;
  size_t cbbuf;
  size_t cbnull;

  for(i=0; i<n_strings; i++) {
    cbbuf = sizeof(wbuf);
    log(KHERR_DEBUG_1, "CSV:[%S]->", strings[i].csv);
    code = csv_to_multi_string(NULL, &cbnull, strings[i].csv);
    code = csv_to_multi_string(wbuf, &cbbuf, strings[i].csv);
    if(code) {
      log(KHERR_DEBUG_1, " returned %d\n", code);
      return code;
    }
    log(KHERR_DEBUG_1, "MS[");
    print_ms(wbuf);
    log(KHERR_DEBUG_1, "]");

    if(cbnull != cbbuf) {
      log(KHERR_ERROR, " NULL length mismatch");
      return 1;
    }

    log(KHERR_DEBUG_1, "\n");

    log(KHERR_DEBUG_1, "  Byte length:%d\n", cbbuf);
  }

  return code;
}
Пример #7
0
int
test_func(gchar *str1, m_struct ms, m_struct2 ms2)
{
    printf("str1: ");
    print_str(str1);
    print_ms(ms);
    print_ms2(ms2);
    return 11234;
}
Пример #8
0
int ms_delete_test(void)
{
  int code = 0;
  wchar_t wbuf[512];
  int i;
  size_t cbs;

  printf("khc_multi_string_delete() test:\n");
  for(i=0; i<n_strings; i++) {
    cbs = sizeof(wbuf);
    khc_csv_to_multi_string(wbuf, &cbs, strings[i].csv);

    printf("MS[");
    print_ms(wbuf);
    printf("] - [b]=[");

    printf("cs:");
    code = khc_multi_string_delete(wbuf, L"b", KHC_CASE_SENSITIVE);
    if(code) {
      printf("ci:");
      code = khc_multi_string_delete(wbuf, L"b", 0);
    }
    if(code) {
      printf("pcs:");
      code = khc_multi_string_delete(wbuf, L"b", KHC_CASE_SENSITIVE | KHC_PREFIX);
    }
    if(code) {
      printf("pci:");
      code = khc_multi_string_delete(wbuf, L"b", KHC_PREFIX);
    }

    if(!code)
      print_ms(wbuf);
    else
      printf(" returned %d\n", code);

    printf("]\n");
  }

  return code;
}
Пример #9
0
int ms_delete_test(void)
{
  int code = 0;
  wchar_t wbuf[512];
  int i;
  size_t cbs;

  for(i=0; i<n_strings; i++) {
    cbs = sizeof(wbuf);
    csv_to_multi_string(wbuf, &cbs, strings[i].csv);

    log(KHERR_DEBUG_1, "MS[");
    print_ms(wbuf);
    log(KHERR_DEBUG_1, "] - [b]=[");

    log(KHERR_DEBUG_1, "cs:");
    code = multi_string_delete(wbuf, L"b", KHM_CASE_SENSITIVE);
    if(code) {
      log(KHERR_DEBUG_1, "ci:");
      code = multi_string_delete(wbuf, L"b", 0);
    }
    if(code) {
      log(KHERR_DEBUG_1, "pcs:");
      code = multi_string_delete(wbuf, L"b", KHM_CASE_SENSITIVE | KHM_PREFIX);
    }
    if(code) {
      log(KHERR_DEBUG_1, "pci:");
      code = multi_string_delete(wbuf, L"b", KHM_PREFIX);
    }

    if(!code)
      print_ms(wbuf);
    else
      log(KHERR_DEBUG_1, " returned %d\n", code);

    log(KHERR_DEBUG_1, "]\n");
  }

  return code;
}
Пример #10
0
int ms_to_csv_test(void) {
  wchar_t wbuf[512];
  int i;
  khm_int32 code = 0;
  size_t cbbuf;
  size_t cbr;
  size_t cbnull;

  printf("khc_multi_string_to_csv() test:\n");

  for(i=0; i<n_strings; i++) {
    cbbuf = sizeof(wbuf);
    printf("Multi string:[");
    print_ms(strings[i].ms);
    printf("]->");
    code = khc_multi_string_to_csv(NULL, &cbnull, strings[i].ms);
    code = khc_multi_string_to_csv(wbuf, &cbbuf, strings[i].ms);
    if(code) {
      printf(" returned %d\n", code);
      return code;
    }
    printf("CSV[%S]", wbuf);
    if(wcscmp(wbuf, strings[i].csv)) {
      printf(" MISMATCH!");
      return 1;
    }

    StringCbLength(wbuf, sizeof(wbuf), &cbr);
    cbr+= sizeof(wchar_t);

    if(cbr != cbbuf) {
      printf(" Length mismatch");
      return 1;
    }

    if(cbnull != cbr) {
      printf(" NULL length mismatch");
      return 1;
    }

    printf("\n");
  }

  return code;
}