001    package calhoun.analysis.crf.test;
002    
003    import java.util.List;
004    
005    import junit.framework.TestCase;
006    import calhoun.analysis.crf.Conrad;
007    import calhoun.analysis.crf.features.interval13.StateTransitionsInterval13;
008    import calhoun.analysis.crf.io.TrainingSequence;
009    
010    public class Interval13FeatureTest extends TestCase {
011    
012            public void testStateTransitions() throws Exception {
013                    Conrad cr = new Conrad("test/input/interval13/config/ssbaselineCPD.xml");
014                    List<? extends TrainingSequence<? extends Character>> data = (List<? extends TrainingSequence<? extends Character>>) cr.getInputHandler().readTrainingData("test/input/interval13/data/oneGeneTrain.interval13.txt");
015                    
016                    StateTransitionsInterval13 f = new StateTransitionsInterval13();
017                    f.train(0, cr.getModel(), data);
018                    assertEquals(Math.log(1/4.0), f.getEndProb());
019                    assertEquals(Math.log(3/4.0), f.getIntronProb());
020            }
021    }