package org.genedb.db.loading; import org.gmod.schema.feature.Contig; import org.gmod.schema.feature.Supercontig; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.orm.hibernate3.SessionFactoryUtils; import org.springframework.transaction.annotation.Transactional; import java.io.File; import java.io.FileReader; import java.io.IOException; @Transactional(rollbackFor=Throwable.class) public class FastaLoaderTest { static { TestLogger.configure(); } private ApplicationContext applicationContext; private FastaLoader loader; private SessionFactory sessionFactory; private Session session; private FeatureTester tester; private static final String organismCommonName = "dummy"; private static final String filename = "test/data/test1.fasta"; public FastaLoaderTest() throws IOException { this.applicationContext = new ClassPathXmlApplicationContext(new String[] {"Load.xml", "Test.xml"}); this.loader = applicationContext.getBean("fastaLoader", FastaLoader.class); loader.setOrganismCommonName(organismCommonName); this.sessionFactory = applicationContext.getBean("sessionFactory", SessionFactory.class); this.session = SessionFactoryUtils.doGetSession(sessionFactory, true); FastaFile fastaFile = new FastaFile(new FileReader(new File(filename))); loader.load("test1", fastaFile); tester = new FeatureTester(session); } @Test public void test() { tester.uniqueNames(Supercontig.class, "test1"); tester.uniqueNames(Contig.class, "contig1", "contig2", "contig3", "contig4"); tester.tlfTester(Supercontig.class, "test1") .residues("gattacagaaacatgtaatttaactgatggtattggagtagcaccgcccaattgtagctgctacactgttgcacttcttata" + "tgacccagtatagctgtgatattcactcctataggttccatcataattgaccagagccagattaca"); tester.tlfTester(Contig.class, "contig1") .seqLen(7) .residues("gattaca") .loc(0, 0, 7); tester.tlfTester(Contig.class, "contig3") .seqLen(0) .residues("") .loc(0, 141, 141); } }