package uk.ac.ebi.fg.myequivalents.managers; import static org.junit.Assert.assertTrue; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import uk.ac.ebi.fg.myequivalents.managers.impl.db.DbBackupManager; import uk.ac.ebi.fg.myequivalents.managers.impl.db.DbManagerFactory; import uk.ac.ebi.fg.myequivalents.managers.interfaces.BackupManager; import uk.ac.ebi.fg.myequivalents.resources.Resources; import uk.ac.ebi.fg.myequivalents.test.MappingsGenerator; /** * Tests for {@link DbBackupManager}. * * @author brandizi * <dl><dt>Date:</dt><dd>12 Mar 2015</dd> * */ public class BackupManagerTest { private Logger log = LoggerFactory.getLogger ( this.getClass () ); @Test public void testBackup () throws FileNotFoundException { MappingsGenerator mgen = new MappingsGenerator (); mgen.generateMappings (); DbManagerFactory mgrFact = Resources.getInstance ().getMyEqManagerFactory (); BackupManager bkpMgr = mgrFact.newBackupManager ( MappingsGenerator.ADMIN_USER.getEmail (), MappingsGenerator.ADMIN_SECRET ); // ----- Backup int result = bkpMgr.dump ( new FileOutputStream ( "target/test_dump.xml" ), null, null ); mgen.cleanUp (); assertTrue ( "dump() returns wrong result!", result > 0 ); log.info ( "----- Backup done, now uploading -----" ); // ----- And Restore bkpMgr = mgrFact.newBackupManager ( MappingsGenerator.ADMIN_USER.getEmail (), MappingsGenerator.ADMIN_SECRET ); assertTrue ( "upload() returns wrong result!", bkpMgr.upload ( new FileInputStream ( "target/test_dump.xml" ) ) > 0 ); assertTrue ( "Database was empty!", mgen.cleanUp () > 0 ); } }