fix: pass empty search backspace through
This commit is contained in:
@@ -1305,6 +1305,42 @@ engine_hanja_korean_keys(struct ct *t)
|
||||
searchend(&f);
|
||||
}
|
||||
|
||||
void
|
||||
engine_hanja_backspace(struct ct *t)
|
||||
{
|
||||
Searchfix f;
|
||||
Str com;
|
||||
|
||||
hanjabegin(&f, LangKO);
|
||||
sclear(&com);
|
||||
CT_CHECK(t, keystroke('h', Mctrl, &com));
|
||||
if(!typekeys(t, "gks", &com))
|
||||
goto cleanup;
|
||||
checkstr(t, "Hanja before backspace", "한", &search.text);
|
||||
CT_EQ_INT(t, 2, im.nkouho);
|
||||
CT_CHECK(t, keystroke(Kback, 0, &com));
|
||||
checkstr(t, "Hanja final backspace", "하", &search.text);
|
||||
CT_EQ_INT(t, 0, im.nkouho);
|
||||
CT_CHECK(t, keystroke(Kback, 0, &com));
|
||||
checkstr(t, "Hanja vowel backspace", "ㅎ", &search.text);
|
||||
CT_CHECK(t, keystroke(Kback, 0, &com));
|
||||
checkstr(t, "empty Hanja search", "", &search.text);
|
||||
CT_EQ_INT(t, LangHANJA, search.lang);
|
||||
CT_CHECK(t, !keystroke(Kback, 0, &com));
|
||||
CT_EQ_INT(t, 0, search.lang);
|
||||
|
||||
if(!typekeys(t, "gks", &com))
|
||||
goto cleanup;
|
||||
CT_CHECK(t, keystroke('h', Mctrl, &com));
|
||||
checkstr(t, "preedit committed before Hanja", "한", &com);
|
||||
CT_EQ_INT(t, LangHANJA, search.lang);
|
||||
CT_CHECK(t, !keystroke(Kback, 0, &com));
|
||||
CT_EQ_INT(t, 0, search.lang);
|
||||
CT_EQ_INT(t, LangKO, im.l->lang);
|
||||
cleanup:
|
||||
searchend(&f);
|
||||
}
|
||||
|
||||
void
|
||||
engine_hanja_input_languages(struct ct *t)
|
||||
{
|
||||
|
||||
@@ -57,6 +57,7 @@ void engine_emoji_dictionary_identity(struct ct*);
|
||||
void engine_hanja_search(struct ct*);
|
||||
void engine_hanja_unknown_and_cancel(struct ct*);
|
||||
void engine_hanja_korean_keys(struct ct*);
|
||||
void engine_hanja_backspace(struct ct*);
|
||||
void engine_hanja_input_languages(struct ct*);
|
||||
void engine_randomized_stress(struct ct*);
|
||||
void engine_full_boundary_passthrough(struct ct*);
|
||||
|
||||
@@ -111,6 +111,7 @@ static const struct ct_test tests[] = {
|
||||
{ "engine/hanja-search", engine_hanja_search },
|
||||
{ "engine/hanja-unknown-cancel", engine_hanja_unknown_and_cancel },
|
||||
{ "engine/hanja-korean-keys", engine_hanja_korean_keys },
|
||||
{ "engine/hanja-backspace", engine_hanja_backspace },
|
||||
{ "engine/hanja-input-languages", engine_hanja_input_languages },
|
||||
{ "engine/randomized-stress", engine_randomized_stress },
|
||||
{ "engine/full-boundary-passthrough", engine_full_boundary_passthrough },
|
||||
|
||||
Reference in New Issue
Block a user