//-----------------------------------------------------------------// bool remove_file(const std::string& fn) { #ifdef WIN32 auto fname = utf8_to_sjis(fn); // std::cout << fname << std::endl; return remove(fname.c_str()) == 0; #else return remove(fn.c_str()) == 0; #endif }
void cut_startup(void) { GError *error = NULL; text_ja_euc = NULL; text_ja_sjis = NULL; text_ja_euc = utf8_to_euc_jp(text_ja_utf8, &error); cut_check_g_error(error); text_ja_sjis = utf8_to_sjis(text_ja_utf8, &error); cut_check_g_error(error); }
void test_simple_exec_sjis(void) { GError *error = NULL; unsigned int n_results; unsigned int max_tagged_len; unsigned int result_len; keyword = utf8_to_sjis("処理", &error); cut_assert_g_error(error); default_encoding = GRN_ENC_SJIS; cut_assert_open_snip(); grn_test_assert(grn_snip_add_cond(&context, snip, keyword, strlen(keyword), NULL, 0, NULL, 0)); grn_test_assert(grn_snip_exec(&context, snip, text_ja_sjis, strlen(text_ja_sjis), &n_results, &max_tagged_len)); cut_assert_equal_uint(2, n_results); cut_assert_equal_uint(104, max_tagged_len); result = g_new(gchar, max_tagged_len); grn_test_assert(grn_snip_get_result(&context, snip, 0, result, &result_len)); cut_assert_equal_string("み型の全文検索エンジンです。" "DBMSやスクリプト言語[[処理]]系等に\n" "組み込むことによって、その全文検索機能を", take_sjis_to_utf8(result)); cut_assert_equal_uint(103, result_len); grn_test_assert(grn_snip_get_result(&context, snip, 1, result, &result_len)); cut_assert_equal_string("パクトな実装ですが、大規模な文書\n" "量と検索要求を[[処理]]できるように設計" "されています。また、純粋なn-gram", take_sjis_to_utf8(result)); cut_assert_equal_uint(103, result_len); }
//-----------------------------------------------------------------// inline std::string utf8_to_sjis(const std::string& src) noexcept { std::string dst; utf8_to_sjis(src, dst); return dst; }