package wikokit.base.wikt.sql.quote; import wikokit.base.wikt.sql.quote.TQuotAuthor; import wikokit.base.wikt.sql.quote.TQuotYear; import wikokit.base.wikt.sql.quote.TQuotRef; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import static org.junit.Assert.*; import wikokit.base.wikipedia.language.LanguageType; import wikokit.base.wikipedia.sql.Connect; public class TQuotRefTest { public Connect ruwikt_parsed_conn; public TQuotRefTest() { } @BeforeClass public static void setUpClass() throws Exception { } @AfterClass public static void tearDownClass() throws Exception { } @Before public void setUp() { ruwikt_parsed_conn = new Connect(); ruwikt_parsed_conn.Open(Connect.RUWIKT_HOST,Connect.RUWIKT_PARSED_DB,Connect.RUWIKT_USER,Connect.RUWIKT_PASS,LanguageType.ru); } @After public void tearDown() { ruwikt_parsed_conn.Close(); } @Test public void testInsert_empty_reference() { System.out.println("insert_empty_reference"); Connect connect = ruwikt_parsed_conn; String _author, _author_wikilink, _title, _title_wikilink, _publisher, _source; // it should be skipped - it's empty reference _author = ""; _author_wikilink = ""; _title = ""; _title_wikilink = ""; _publisher = ""; _source = ""; TQuotRef result = TQuotRef.insert(connect, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source); assertNull(result); } @Test public void testInsert_ru_only_author() { System.out.println("insert_ru_only_author"); Connect connect = ruwikt_parsed_conn; String _author, _author_wikilink, _title, _title_wikilink, _publisher, _source; _author = "test_И. А. Крылов"; _author_wikilink = "test_Крылов, Иван Андреевич"; _title = ""; _title_wikilink = ""; _publisher = ""; _source = ""; TQuotRef result = TQuotRef.insert(connect, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source); assertNotNull(result); TQuotAuthor a = result.getAuthor(); assertNotNull( a ); assertEquals(0, _author.compareTo( a.getName() )); a.delete(connect); result.delete(connect); } @Test public void testInsert_ru_only_author_and_title() { System.out.println("insert_ru_only_author_and_title"); Connect connect = ruwikt_parsed_conn; String _author, _author_wikilink, _title, _title_wikilink, _publisher, _source; _author = "test_И. А. Крылов"; _author_wikilink = ""; _title = "test_Лиса и виноград"; _title_wikilink = ""; _publisher = ""; _source = ""; TQuotRef result = TQuotRef.insert(connect, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source); assertNotNull(result); TQuotAuthor a = result.getAuthor(); assertNotNull( a ); assertEquals(0, _author.compareTo( a.getName() )); assertEquals(0, _title.compareTo( result.getTitle() )); a.delete(connect); result.delete(connect); } @Test public void testInsert_full_reference_with_years() { System.out.println("insert_full_reference_with_years"); Connect connect = ruwikt_parsed_conn; String _author, _author_wikilink, _title, _title_wikilink, _publisher, _source; int _from, _to; String page_title = "the test entry"; _author = ""; _author_wikilink = ""; _title = "test_Лиса и виноград"; _title_wikilink = ""; _publisher = ""; _source = ""; _from = _to = 91931; TQuotRef result = TQuotRef.insertWithYears(connect, page_title, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source, _from, _to); assertNotNull(result); TQuotAuthor a = result.getAuthor(); assertNull( a ); TQuotYear y = result.getYear(); assertNotNull( y ); assertEquals(_from, y.getFrom()); assertEquals(_to, y.getTo()); y.delete(connect); result.delete(connect); } @Test public void testInsert_ru_getOrInsert() { System.out.println("insert_ru_getOrInsert"); Connect connect = ruwikt_parsed_conn; String _author, _author_wikilink, _title, _title_wikilink, _publisher, _source; _author = "test_Alexander Pushkin"; _author_wikilink = ""; _title = "test_Ruslan i Lyudmila"; _title_wikilink = ""; _publisher = ""; _source = ""; TQuotRef result1 = TQuotRef.getOrInsert(connect, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source); assertNotNull(result1); TQuotRef result2 = TQuotRef.getOrInsert(connect, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source); assertEquals(result1.getID(), result2.getID()); TQuotAuthor a = result1.getAuthor(); a.delete(connect); result1.delete(connect); } @Test public void testInsert_ru_getOrInsert_with_years() { System.out.println("insert_ru_getOrInsert"); Connect connect = ruwikt_parsed_conn; String _author, _author_wikilink, _title, _title_wikilink, _publisher, _source; int _from, _to; String page_title = "the test entry"; _author = "test_Alexander Pushkin"; _author_wikilink = ""; _title = "test_Ruslan i Lyudmila"; _title_wikilink = ""; _publisher = ""; _source = ""; _from = _to = 91931; TQuotRef result1 = TQuotRef.getOrInsertWithYears(connect, page_title, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source, _from, _to); assertNotNull(result1); TQuotRef result2 = TQuotRef.getOrInsertWithYears(connect, page_title, _author, _author_wikilink, _title, _title_wikilink, _publisher, _source, _from, _to); assertEquals(result1.getID(), result2.getID()); TQuotYear y = result1.getYear(); assertNotNull( y ); y.delete(connect); TQuotAuthor a = result1.getAuthor(); a.delete(connect); result1.delete(connect); } }