package tests.net.sf.jabref.imports; import java.io.IOException; import java.util.HashMap; import java.util.List; import junit.framework.TestCase; import net.sf.jabref.BibtexEntry; import net.sf.jabref.BibtexEntryType; import net.sf.jabref.Globals; import net.sf.jabref.JabRefPreferences; import net.sf.jabref.imports.IsiImporter; import net.sf.jabref.imports.RisImporter; /** * Test cases for the RISImporter * * @author $Author: coezbek $ * */ public class RISImporterTest extends TestCase { protected void setUp() throws Exception { super.setUp(); if (Globals.prefs == null) { Globals.prefs = JabRefPreferences.getInstance(); } } protected void tearDown() throws Exception { super.tearDown(); } public void testIsRecognizedFormat() throws IOException { RisImporter importer = new RisImporter(); assertTrue(importer.isRecognizedFormat(RISImporterTest.class .getResourceAsStream("RisImporterTest1.ris"))); } public void testProcessSubSup() { HashMap<String, String> hm = new HashMap<String, String>(); hm.put("title", "/sub 3/"); IsiImporter.processSubSup(hm); assertEquals("$_3$", hm.get("title")); hm.put("title", "/sub 3 /"); IsiImporter.processSubSup(hm); assertEquals("$_3$", hm.get("title")); hm.put("title", "/sub 31/"); IsiImporter.processSubSup(hm); assertEquals("$_{31}$", hm.get("title")); hm.put("abstract", "/sub 3/"); IsiImporter.processSubSup(hm); assertEquals("$_3$", hm.get("abstract")); hm.put("review", "/sub 31/"); IsiImporter.processSubSup(hm); assertEquals("$_{31}$", hm.get("review")); hm.put("title", "/sup 3/"); IsiImporter.processSubSup(hm); assertEquals("$^3$", hm.get("title")); hm.put("title", "/sup 31/"); IsiImporter.processSubSup(hm); assertEquals("$^{31}$", hm.get("title")); hm.put("abstract", "/sup 3/"); IsiImporter.processSubSup(hm); assertEquals("$^3$", hm.get("abstract")); hm.put("review", "/sup 31/"); IsiImporter.processSubSup(hm); assertEquals("$^{31}$", hm.get("review")); hm.put("title", "/sub $Hello/"); IsiImporter.processSubSup(hm); assertEquals("$_{\\$Hello}$", hm.get("title")); } public void testImportEntries() throws IOException { RisImporter importer = new RisImporter(); List<BibtexEntry> entries = importer.importEntries(RISImporterTest.class .getResourceAsStream("RisImporterTest1.ris")); assertEquals(1, entries.size()); BibtexEntry entry = entries.get(0); assertEquals("Editorial: Open Source and Empirical Software Engineering", entry .getField("title")); assertEquals( "Harrison, Warren", entry.getField("author")); assertEquals(BibtexEntryType.ARTICLE, entry.getType()); assertEquals("Empirical Software Engineering", entry.getField("journal")); assertEquals("2001", entry.getField("year")); assertEquals("6", entry.getField("volume")); assertEquals("3", entry.getField("number")); assertEquals("193--194", entry.getField("pages")); assertEquals("#sep#", entry.getField("month")); } }