void Test::assertTermEditDistance(const vespalib::string &query, const vespalib::string &field, uint32_t expectedDel, uint32_t expectedIns, uint32_t expectedSub) { // Setup feature test. vespalib::string feature = "termEditDistance(foo)"; FtFeatureTest ft(_factory, feature); ft.getIndexEnv().getBuilder().addField(FieldType::INDEX, CollectionType::SINGLE, "foo"); StringMap foo; foo.add("foo", field); FT_SETUP(ft, query, foo, 1); // Execute and compare results. search::fef::test::RankResult exp; exp .addScore(feature + ".out", (feature_t)(expectedDel*1 + expectedIns*1 + expectedSub*1)) .addScore(feature + ".del", (feature_t)expectedDel) .addScore(feature + ".ins", (feature_t)expectedIns) .addScore(feature + ".sub", (feature_t)expectedSub); ASSERT_TRUE(ft.execute(exp)); }
void addTypeName(Type type, const char *name) { const char *n; if (!types.find(type, n)) types.add(name, type); }