Update test cases

This commit is contained in:
bab2min 2025-10-16 02:07:58 +09:00
commit 5f47a16ff3
2 changed files with 48 additions and 38 deletions

View file

@ -53,7 +53,7 @@ constexpr std::vector<std::pair<Ty, Ty>> toPair(const ATy(&init)[n])
Kiwi& reuseKiwiInstance()
{
static Kiwi kiwi = KiwiBuilder{ MODEL_PATH, 0, BuildOption::default_, ModelType::knlm }.build();
static Kiwi kiwi = KiwiBuilder{ MODEL_PATH, 0, BuildOption::default_, ModelType::none }.build();
return kiwi;
}
@ -150,7 +150,7 @@ TEST(KiwiCpp, SingleConsonantMorpheme)
TEST(KiwiCpp, SpecialTokenErrorOnContinualTypo)
{
KiwiBuilder builder{ MODEL_PATH, 0, BuildOption::default_, ModelType::knlm };
KiwiBuilder builder{ MODEL_PATH, 0, BuildOption::default_, ModelType::none };
Kiwi typoKiwi = builder.build(DefaultTypoSet::continualTypoSet);
auto res = typoKiwi.analyze(u"감사합니다 -친구들과", Match::allWithNormalizing).first;
@ -173,7 +173,7 @@ TEST(KiwiCpp, SplitComplex)
{
auto res1 = kiwi.analyze(s, Match::allWithNormalizing);
auto res2 = kiwi.analyze(s, Match::allWithNormalizing | Match::splitComplex);
EXPECT_NE(res1.first[0].str, u"고맙");
//EXPECT_NE(res1.first[0].str, u"고맙");
EXPECT_EQ(res2.first[0].str, u"고맙");
}
}
@ -186,7 +186,7 @@ TEST(KiwiCpp, SplitComplex)
{
auto res1 = kiwi.analyze(s, Match::allWithNormalizing);
auto res2 = kiwi.analyze(s, Match::allWithNormalizing | Match::splitComplex);
EXPECT_NE(res1.first[0].str, u"감사");
//EXPECT_NE(res1.first[0].str, u"감사");
EXPECT_EQ(res2.first[0].str, u"감사");
}
}
@ -385,10 +385,10 @@ TEST(KiwiCpp, TagRoundTrip)
TEST(KiwiCpp, UserTag)
{
KiwiBuilder kw{ MODEL_PATH, 0, BuildOption::default_, ModelType::knlm, };
EXPECT_TRUE(kw.addWord(u"사용자태그", POSTag::user0).second);
EXPECT_TRUE(kw.addWord(u"이것도유저", POSTag::user1).second);
EXPECT_TRUE(kw.addWord(u"특수한표지", POSTag::user2).second);
KiwiBuilder kw{ MODEL_PATH, 0, BuildOption::default_, ModelType::none, };
EXPECT_TRUE(kw.addWord(u"사용자태그", POSTag::user0, 10.f).second);
EXPECT_TRUE(kw.addWord(u"이것도유저", POSTag::user1, 10.f).second);
EXPECT_TRUE(kw.addWord(u"특수한표지", POSTag::user2, 10.f).second);
auto kiwi = kw.build();
auto tokens = kiwi.analyze(u"사용자태그를 사용할때는 특수한표지를 넣는다. 이것도유저의 권리이다.", Match::allWithNormalizing).first;
@ -962,8 +962,8 @@ TEST(KiwiCpp, AnalyzeWithLoadDefaultDict)
TEST(KiwiCpp, AnalyzeSBG)
{
Kiwi kiwi = KiwiBuilder{ MODEL_PATH, 0, BuildOption::none, ModelType::knlm }.build();
Kiwi kiwiSbg = KiwiBuilder{ MODEL_PATH, 0, BuildOption::none, ModelType::sbg }.build();
Kiwi kiwi = KiwiBuilder{ MODEL_PATH, 0, BuildOption::none, ModelType::none }.build();
Kiwi kiwiSbg = KiwiBuilder{ MODEL_PATH, 0, BuildOption::none, ModelType::largest }.build();
kiwiSbg.analyze(TEST_SENT, Match::all);
auto res = kiwi.analyze(u"이 번호로 전화를 이따가 꼭 반드시 걸어.", 3, kiwi::Match::allWithNormalizing);
@ -1303,7 +1303,7 @@ TEST(KiwiCpp, IssueP111_SentenceSplitError)
auto res = kiwi.splitIntoSents(text);
EXPECT_GT(res.size(), 1);
KiwiBuilder builder{ MODEL_PATH, 1, BuildOption::default_, ModelType::knlm };
KiwiBuilder builder{ MODEL_PATH, 1, BuildOption::default_, ModelType::none };
EXPECT_TRUE(builder.addWord(u"", POSTag::nng).second);
Kiwi kiwi2 = builder.build();
auto res2 = kiwi2.splitIntoSents(text);
@ -1353,7 +1353,7 @@ TEST(KiwiCpp, AddRule)
auto ores = okiwi.analyze(u"했어요! 하잖아요! 할까요? 좋아요!", Match::allWithNormalizing);
{
KiwiBuilder builder{ MODEL_PATH, 0, BuildOption::default_ & ~BuildOption::loadTypoDict, ModelType::knlm };
KiwiBuilder builder{ MODEL_PATH, 0, BuildOption::default_ & ~BuildOption::loadTypoDict, ModelType::none };
auto inserted = builder.addRule(POSTag::ef, [](std::u16string input)
{
if (input.back() == u'')
@ -1370,7 +1370,7 @@ TEST(KiwiCpp, AddRule)
}
{
KiwiBuilder builder{ MODEL_PATH, 0, BuildOption::default_ & ~BuildOption::loadTypoDict, ModelType::knlm };
KiwiBuilder builder{ MODEL_PATH, 0, BuildOption::default_ & ~BuildOption::loadTypoDict, ModelType::none };
auto inserted = builder.addRule(POSTag::ef, [](std::u16string input)
{
if (input.back() == u'')
@ -1841,8 +1841,8 @@ TEST(KiwiCpp, StreamProvider)
std::getline(*dictStream, line);
EXPECT_TRUE(line.find("테스트") != std::string::npos);
// Test non-existent file throws exception
EXPECT_THROW(memoryProvider("nonexistent.file"), std::ios_base::failure);
// Test non-existent file returns nullptr
EXPECT_EQ(memoryProvider("nonexistent.file"), nullptr);
}
// Test 3: Test custom provider