package org.wikibrain.core.dao; import org.junit.Test; import org.wikibrain.core.dao.sql.LocalLinkSqlDao; import org.wikibrain.core.dao.sql.TestDaoUtil; import org.wikibrain.core.dao.sql.WpDataSource; import org.wikibrain.core.lang.LanguageInfo; import org.wikibrain.core.model.LocalLink; import java.io.IOException; public class TestLocalLinkDao { @Test public void testLink() throws ClassNotFoundException, IOException, DaoException { WpDataSource ds = TestDaoUtil.getWpDataSource(); LanguageInfo lang = LanguageInfo.getByLangCode("en"); LocalLinkSqlDao dao = new LocalLinkSqlDao(ds); dao.beginLoad(); LocalLink link = new LocalLink( lang.getLanguage(), "I am an anchor text", 1, 2, true, 0, true, LocalLink.LocationType.FIRST_PARA ); dao.save(link); dao.endLoad(); Iterable<LocalLink> savedLinks = dao.getLinks(lang.getLanguage(), 1, true); assert (savedLinks!=null); LocalLink savedLink = savedLinks.iterator().next(); assert (savedLink.isOutlink()); assert (savedLink.getLanguage() == link.getLanguage()); assert (savedLink.getAnchorText().equals(link.getAnchorText())); assert (savedLink.getSourceId() == link.getSourceId()); assert (savedLink.getDestId() == link.getDestId()); assert (savedLink.getLocation() == link.getLocation()); assert (savedLink.isParseable() == link.isParseable()); assert (savedLink.getLocType() == link.getLocType()); savedLinks = dao.getLinks(lang.getLanguage(), 2, false); assert (savedLinks!=null); savedLink = savedLinks.iterator().next(); assert (!savedLink.isOutlink()); assert (savedLink.getLanguage() == link.getLanguage()); assert (savedLink.getAnchorText().equals(link.getAnchorText())); assert (savedLink.getSourceId() == link.getSourceId()); assert (savedLink.getDestId() == link.getDestId()); assert (savedLink.getLocation() == link.getLocation()); assert (savedLink.isParseable() == link.isParseable()); assert (savedLink.getLocType() == link.getLocType()); } }