package org.ansj.library; import org.ansj.domain.Result; import org.ansj.domain.Term; import org.ansj.splitWord.analysis.DicAnalysis; import org.junit.Assert; import org.junit.Test; import org.nlpcn.commons.lang.tire.domain.Forest; public class DicLibraryTest { /** * 关键词增加 * * @param keyword 所要增加的关键词 * @param nature 关键词的词性 * @param freq 关键词的词频 */ @Test public void insertTest() { DicLibrary.insert(DicLibrary.DEFAULT, "增加新词", "我是词性", 1000); Result parse = DicAnalysis.parse("这是用户自定义词典增加新词的例子"); System.out.println(parse); boolean flag = false; for (Term term : parse) { flag = flag || "增加新词".equals(term.getName()); } Assert.assertTrue(flag); } /** * 增加关键词 * * @param keyword */ @Test public void insertTest2() { DicLibrary.insert(DicLibrary.DEFAULT, "增加新词"); Result parse = DicAnalysis.parse("这是用户自定义词典增加新词的例子"); System.out.println(parse); boolean flag = false; for (Term term : parse) { flag = flag || "增加新词".equals(term.getName()); } Assert.assertTrue(flag); } /** * 删除关键词 */ @Test public void delete() { insertTest(); DicLibrary.delete(DicLibrary.DEFAULT, "增加新词"); Result parse = DicAnalysis.parse("这是用户自定义词典增加新词的例子"); System.out.println(parse); boolean flag = false; for (Term term : parse) { flag = flag || "增加新词".equals(term.getName()); } Assert.assertFalse(flag); } /** * 自定义key */ @Test public void keyTest(){ String key = "dic_mykey" ; DicLibrary.put(key, key, new Forest()); DicLibrary.insert(key, "增加新词", "我是词性", 1000); Result parse = DicAnalysis.parse("这是用户自定义词典增加新词的例子",DicLibrary.gets(key)); System.out.println(parse); boolean flag = false; for (Term term : parse) { flag = flag || "增加新词".equals(term.getName()); } Assert.assertTrue(flag); } }