diff --git a/lib/tests/cjk/cur/test1 b/lib/tests/cjk/cur/test1 new file mode 100644 index 00000000..15387907 --- /dev/null +++ b/lib/tests/cjk/cur/test1 @@ -0,0 +1,10 @@ +From: "Bob" +Subject: CJK 1 +To: "Chase" +Date: Thu, 18 Nov 2021 08:35:34 +0200 +Message-Id: 112342343e9dfo.fsf@builder.com +User-Agent: mu4e 1.7.5; emacs 29.0.50 + + サーバがダウンしました + +https://github.com/djcb/mu/issues/1428 diff --git a/lib/tests/cjk/cur/test2 b/lib/tests/cjk/cur/test2 new file mode 100644 index 00000000..875bff52 --- /dev/null +++ b/lib/tests/cjk/cur/test2 @@ -0,0 +1,10 @@ +From: "Bob" +Subject: CJK 2 +To: "Chase" +Date: Thu, 18 Nov 2021 08:35:34 +0200 +Message-Id: 271r2342343e9dfo.fsf@builder.com +User-Agent: mu4e 1.7.5; emacs 29.0.50 + + スポンサーシップ募集 + +https://github.com/djcb/mu/issues/1428 diff --git a/lib/tests/cjk/cur/test3 b/lib/tests/cjk/cur/test3 new file mode 100644 index 00000000..f0efe718 --- /dev/null +++ b/lib/tests/cjk/cur/test3 @@ -0,0 +1,10 @@ +From: "Bob" +Subject: CJK 3 +To: "Chase" +Date: Thu, 18 Nov 2021 08:35:34 +0200 +Message-Id: 3871r2342343e9dfo.fsf@builder.com +User-Agent: mu4e 1.7.5; emacs 29.0.50 + + サービス開始について + +https://github.com/djcb/mu/issues/1428 diff --git a/lib/tests/cjk/cur/test4 b/lib/tests/cjk/cur/test4 new file mode 100644 index 00000000..2bad3998 --- /dev/null +++ b/lib/tests/cjk/cur/test4 @@ -0,0 +1,10 @@ +From: "Bob" +Subject: CJK 4 +To: "Chase" +Date: Thu, 18 Nov 2021 08:35:34 +0200 +Message-Id: 4871r2342343e9dfo.fsf@builder.com +User-Agent: mu4e 1.7.5; emacs 29.0.50 + + ショルダーバック + +https://github.com/djcb/mu/issues/1428 diff --git a/meson.build b/meson.build index a86db91b..6bb0ee91 100644 --- a/meson.build +++ b/meson.build @@ -100,6 +100,7 @@ testmaildir=join_paths(meson.current_source_dir(), 'lib', 'tests') config_h_data.set_quoted('MU_TESTMAILDIR', join_paths(testmaildir, 'testdir')) config_h_data.set_quoted('MU_TESTMAILDIR2', join_paths(testmaildir, 'testdir2')) config_h_data.set_quoted('MU_TESTMAILDIR4', join_paths(testmaildir, 'testdir4')) +config_h_data.set_quoted('MU_TESTMAILDIR_CJK', join_paths(testmaildir, 'cjk')) ################################################################################ # hard dependencies diff --git a/mu/tests/test-mu-query.cc b/mu/tests/test-mu-query.cc index 2587eb57..b31ba0ce 100644 --- a/mu/tests/test-mu-query.cc +++ b/mu/tests/test-mu-query.cc @@ -559,6 +559,43 @@ test_mu_query_threads_compilation_error(void) 3); } +/* https://github.com/djcb/mu/issues/1428 */ +static void +test_mu_query_cjk(void) +{ + /* XXX: this doesn't pass yet; return for now */ + g_test_skip("skip CJK tests"); + return; + + { + g_unsetenv("XAPIAN_CJK_NGRAM"); + const auto xpath = make_database(MU_TESTMAILDIR_CJK); + g_assert_cmpuint(run_and_count_matches(xpath, + "サーバがダウンしました", + QueryFlags::None), + ==, 1); + g_assert_cmpuint(run_and_count_matches(xpath, + "サーバ", + QueryFlags::None), + ==, 0); + } + + + { + g_setenv("XAPIAN_CJK_NGRAM", "1", TRUE); + const auto xpath = make_database(MU_TESTMAILDIR_CJK); + g_assert_cmpuint(run_and_count_matches(xpath, + "サーバがダウンしました", + QueryFlags::None), + ==, 0); + g_assert_cmpuint(run_and_count_matches(xpath, + "サーバ", + QueryFlags::None), + ==, 0); + } +} + + int main(int argc, char* argv[]) { @@ -608,6 +645,9 @@ main(int argc, char* argv[]) g_test_add_func("/mu-query/test-mu-query-threads-compilation-error", test_mu_query_threads_compilation_error); + g_test_add_func("/mu-query/test-mu-query-cjk", + test_mu_query_cjk); + if (!g_test_verbose()) g_log_set_handler(NULL, (GLogLevelFlags)(G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL |