package org.jabref.logic; import org.jabref.model.database.BibDatabaseMode; import org.jabref.model.entry.BibEntry; import org.jabref.model.entry.BibtexEntryTypes; import org.junit.Assert; import org.junit.Test; public class TypedBibEntryTest { @Test public void hasAllRequiredFieldsFail() { BibEntry e = new BibEntry(BibtexEntryTypes.ARTICLE.getName()); e.setField("author", "abc"); e.setField("title", "abc"); e.setField("journal", "abc"); TypedBibEntry typedEntry = new TypedBibEntry(e, BibDatabaseMode.BIBTEX); Assert.assertFalse(typedEntry.hasAllRequiredFields()); } @Test public void hasAllRequiredFields() { BibEntry e = new BibEntry(BibtexEntryTypes.ARTICLE.getName()); e.setField("author", "abc"); e.setField("title", "abc"); e.setField("journal", "abc"); e.setField("year", "2015"); TypedBibEntry typedEntry = new TypedBibEntry(e, BibDatabaseMode.BIBTEX); Assert.assertTrue(typedEntry.hasAllRequiredFields()); } @Test public void hasAllRequiredFieldsForUnknownTypeReturnsTrue() { BibEntry e = new BibEntry("articlllleeeee"); TypedBibEntry typedEntry = new TypedBibEntry(e, BibDatabaseMode.BIBTEX); Assert.assertTrue(typedEntry.hasAllRequiredFields()); } @Test public void getTypeForDisplayReturnsTypeName() { BibEntry e = new BibEntry(BibtexEntryTypes.INPROCEEDINGS.getName()); TypedBibEntry typedEntry = new TypedBibEntry(e, BibDatabaseMode.BIBTEX); Assert.assertEquals("InProceedings", typedEntry.getTypeForDisplay()); } @Test public void getTypeForDisplayForUnknownTypeCapitalizeFirstLetter() { BibEntry e = new BibEntry("articlllleeeee"); TypedBibEntry typedEntry = new TypedBibEntry(e, BibDatabaseMode.BIBTEX); Assert.assertEquals("Articlllleeeee", typedEntry.getTypeForDisplay()); } }