@Test
 public void testDefaultConstructor() {
   BibEntry entry = new BibEntry();
   // we have to use `getType("misc")` in the case of biblatex mode
   Assert.assertEquals("misc", entry.getType());
   Assert.assertNotNull(entry.getId());
   Assert.assertNull(entry.getField("author"));
 }
  @Test
  public void testCiteKeyAndID() {
    BibEntry be = new BibEntry();
    Assert.assertFalse(be.hasCiteKey());
    be.setField("author", "Albert Einstein");
    be.setField(BibEntry.KEY_FIELD, "Einstein1931");
    Assert.assertTrue(be.hasCiteKey());
    Assert.assertEquals("Einstein1931", be.getCiteKey());
    Assert.assertEquals("Albert Einstein", be.getField("author"));
    be.clearField("author");
    Assert.assertNull(be.getField("author"));

    String id = IdGenerator.next();
    be.setId(id);
    Assert.assertEquals(id, be.getId());
  }