+ //
+ RIO r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxcode.run1.t" ),
+ new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ ALGORITHM.GSDIR,
+ REROOTING.BY_ALGORITHM,
+ "",
+ -1,
+ -1,
+ true,
+ false,
+ true );
+ if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.CODE ) {
+ return false;
+ }
+ if ( r0.getAnalyzedGeneTrees().length != 201 ) {
+ return false;
+ }
+ if ( r0.getExtNodesOfAnalyzedGeneTrees() != 6 ) {
+ System.out.println( r0.getExtNodesOfAnalyzedGeneTrees() );
+ return false;
+ }
+ if ( r0.getIntNodesOfAnalyzedGeneTrees() != 5 ) {
+ return false;
+ }
+ if ( r0.getRemovedGeneTreeNodes().size() != 0 ) {
+ return false;
+ }
+ if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 1 ) {
+ return false;
+ }
+ m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ if ( !m.getRowAsString( 0, ',' ).equals( "A7SHU1_NEMVE,201,201,200,200,200,200" ) ) {
+ System.out.println( m.getRowAsString( 0, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 1, ',' ).equals( "BCDO2_HUMAN,201,201,200,200,200,43" ) ) {
+ System.out.println( m.getRowAsString( 1, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 2, ',' ).equals( "BCDO2_MOUSE,200,200,201,201,201,43" ) ) {
+ System.out.println( m.getRowAsString( 2, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 3, ',' ).equals( "H2ZH97_CIOSA,200,200,201,201,201,201" ) ) {
+ System.out.println( m.getRowAsString( 3, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 4, ',' ).equals( "Q1RLW1_DANRE,200,200,201,201,201,43" ) ) {
+ System.out.println( m.getRowAsString( 4, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 5, ',' ).equals( "Q6DIN7_XENTR,200,43,43,201,43,201" ) ) {
+ System.out.println( m.getRowAsString( 5, ',' ) );
+ return false;
+ }
+ r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxid.run1.t" ),
+ new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ ALGORITHM.GSDIR,
+ REROOTING.BY_ALGORITHM,
+ "",
+ -1,
+ -1,
+ true,
+ false,
+ true );
+ if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.ID ) {
+ return false;
+ }
+ if ( r0.getAnalyzedGeneTrees().length != 201 ) {
+ return false;
+ }
+ if ( r0.getExtNodesOfAnalyzedGeneTrees() != 6 ) {
+ return false;
+ }
+ if ( r0.getIntNodesOfAnalyzedGeneTrees() != 5 ) {
+ return false;
+ }
+ if ( r0.getRemovedGeneTreeNodes().size() != 0 ) {
+ return false;
+ }
+ if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 1 ) {
+ return false;
+ }
+ m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ if ( !m.getRowAsString( 0, ',' ).equals( "A7SHU1_45351,201,200,201,200,200,200" ) ) {
+ System.out.println( m.getRowAsString( 0, ',' ) );
+ return false;
+ }
+ //mouse
+ if ( !m.getRowAsString( 1, ',' ).equals( "BCDO2_10090,200,201,200,201,201,43" ) ) {
+ System.out.println( m.getRowAsString( 1, ',' ) );
+ return false;
+ }
+ //human
+ if ( !m.getRowAsString( 2, ',' ).equals( "BCDO2_9606,201,200,201,200,200,43" ) ) {
+ System.out.println( m.getRowAsString( 2, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 3, ',' ).equals( "H2ZH97_51511,200,201,200,201,201,201" ) ) {
+ System.out.println( m.getRowAsString( 3, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 4, ',' ).equals( "Q1RLW1_7955,200,201,200,201,201,43" ) ) {
+ System.out.println( m.getRowAsString( 4, ',' ) );
+ return false;
+ }
+ if ( !m.getRowAsString( 5, ',' ).equals( "Q6DIN7_8364,200,43,43,201,43,201" ) ) {
+ System.out.println( m.getRowAsString( 5, ',' ) );
+ return false;
+ }
+ r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxsn.run1.t" ),
+ new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ ALGORITHM.GSDIR,
+ REROOTING.BY_ALGORITHM,
+ "",
+ -1,
+ -1,
+ true,
+ false,
+ true );
+ if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.SCIENTIFIC_NAME ) {
+ return false;
+ }
+ if ( r0.getAnalyzedGeneTrees().length != 201 ) {
+ return false;
+ }
+ if ( r0.getExtNodesOfAnalyzedGeneTrees() != 6 ) {
+ System.out.println( r0.getExtNodesOfAnalyzedGeneTrees() );
+ return false;
+ }
+ // if ( r0.getIntNodesOfAnalyzedGeneTrees() != 5 ) {
+ // return false;
+ // }
+ // if ( r0.getRemovedGeneTreeNodes().size() != 0 ) {
+ // return false;
+ // }
+ // if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 1 ) {
+ // return false;
+ // }
+ // m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ // if ( !m.getRowAsString( 0, ',' ).equals( "A7SHU1_Nematostella_vectensis,201,201,200,200,200,200" ) ) {
+ // System.out.println( m.getRowAsString( 0, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 1, ',' ).equals( "BCDO2_Homo_sapiens,201,201,200,200,200,43" ) ) {
+ // System.out.println( m.getRowAsString( 1, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 2, ',' ).equals( "BCDO2_Mus_musculus,200,200,201,201,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 2, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 3, ',' ).equals( "H2ZH97_Ciona_savignyi,200,200,201,201,201,201" ) ) {
+ // System.out.println( m.getRowAsString( 3, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 4, ',' ).equals( "Q1RLW1_Danio_rerio,200,200,201,201,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 4, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 5, ',' ).equals( "Q6DIN7_Xenopus_tropicalis,200,43,43,201,43,201" ) ) {
+ // System.out.println( m.getRowAsString( 5, ',' ) );
+ // return false;
+ // }
+ //
+ // r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxsn.run1.t" ),
+ // new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ // ALGORITHM.GSDIR,
+ // REROOTING.MIDPOINT,
+ // "",
+ // -1,
+ // -1,
+ // true,
+ // false,
+ // true );
+ // if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.SCIENTIFIC_NAME ) {
+ // return false;
+ // }
+ // if ( r0.getAnalyzedGeneTrees().length != 201 ) {
+ // return false;
+ // }
+ // if ( r0.getExtNodesOfAnalyzedGeneTrees() != 6 ) {
+ // return false;
+ // }
+ // if ( r0.getIntNodesOfAnalyzedGeneTrees() != 5 ) {
+ // return false;
+ // }
+ // if ( r0.getRemovedGeneTreeNodes().size() != 0 ) {
+ // return false;
+ // }
+ // if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 2 ) {
+ // return false;
+ // }
+ // m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ // if ( !m.getRowAsString( 0, ',' ).equals( "A7SHU1_Nematostella_vectensis,201,94,93,160,93,93" ) ) {
+ // System.out.println( m.getRowAsString( 0, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 1, ',' ).equals( "BCDO2_Homo_sapiens,94,201,200,53,200,43" ) ) {
+ // System.out.println( m.getRowAsString( 1, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 2, ',' ).equals( "BCDO2_Mus_musculus,93,200,201,53,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 2, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 3, ',' ).equals( "H2ZH97_Ciona_savignyi,160,53,53,201,53,53" ) ) {
+ // System.out.println( m.getRowAsString( 3, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 4, ',' ).equals( "Q1RLW1_Danio_rerio,93,200,201,53,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 4, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 5, ',' ).equals( "Q6DIN7_Xenopus_tropicalis,93,43,43,53,43,201" ) ) {
+ // System.out.println( m.getRowAsString( 5, ',' ) );
+ // return false;
+ // }
+ //
+ // r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxsn.run1.t" ),
+ // new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ // ALGORITHM.GSDIR,
+ // REROOTING.OUTGROUP,
+ // "H2ZH97_Ciona_savignyi",
+ // -1,
+ // -1,
+ // true,
+ // false,
+ // true );
+ // if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.SCIENTIFIC_NAME ) {
+ // return false;
+ // }
+ // if ( r0.getAnalyzedGeneTrees().length != 201 ) {
+ // return false;
+ // }
+ // if ( r0.getExtNodesOfAnalyzedGeneTrees() != 6 ) {
+ // return false;
+ // }
+ // if ( r0.getIntNodesOfAnalyzedGeneTrees() != 5 ) {
+ // return false;
+ // }
+ // if ( r0.getRemovedGeneTreeNodes().size() != 0 ) {
+ // return false;
+ // }
+ // if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 2 ) {
+ // return false;
+ // }
+ // m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ // if ( !m.getRowAsString( 0, ',' ).equals( "A7SHU1_Nematostella_vectensis,201,201,200,0,200,200" ) ) {
+ // System.out.println( m.getRowAsString( 0, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 1, ',' ).equals( "BCDO2_Homo_sapiens,201,201,200,0,200,43" ) ) {
+ // System.out.println( m.getRowAsString( 1, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 2, ',' ).equals( "BCDO2_Mus_musculus,200,200,201,0,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 2, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 3, ',' ).equals( "H2ZH97_Ciona_savignyi,0,0,0,201,0,0" ) ) {
+ // System.out.println( m.getRowAsString( 3, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 4, ',' ).equals( "Q1RLW1_Danio_rerio,200,200,201,0,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 4, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 5, ',' ).equals( "Q6DIN7_Xenopus_tropicalis,200,43,43,0,43,201" ) ) {
+ // System.out.println( m.getRowAsString( 5, ',' ) );
+ // return false;
+ // }
+ //
+ //
+ // r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxsn.run1.t" ),
+ // new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ // ALGORITHM.GSDIR,
+ // REROOTING.NONE,
+ // null,
+ // 10,
+ // 19,
+ // true,
+ // false,
+ // true );
+ // if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.SCIENTIFIC_NAME ) {
+ // return false;
+ // }
+ // if ( r0.getAnalyzedGeneTrees().length != 10 ) {
+ // return false;
+ // }
+ // if ( r0.getExtNodesOfAnalyzedGeneTrees() != 6 ) {
+ // return false;
+ // }
+ // if ( r0.getIntNodesOfAnalyzedGeneTrees() != 5 ) {
+ // return false;
+ // }
+ // if ( r0.getRemovedGeneTreeNodes().size() != 0 ) {
+ // return false;
+ // }
+ // if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 4 ) {
+ // return false;
+ // }
+ // m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ // if ( !m.getRowAsString( 0, ',' ).equals( "A7SHU1_Nematostella_vectensis,10,0,0,10,0,0" ) ) {
+ // System.out.println( m.getRowAsString( 0, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 1, ',' ).equals( "BCDO2_Homo_sapiens,0,10,0,0,0,0" ) ) {
+ // System.out.println( m.getRowAsString( 1, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 2, ',' ).equals( "BCDO2_Mus_musculus,0,0,10,0,0,0" ) ) {
+ // System.out.println( m.getRowAsString( 2, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 3, ',' ).equals( "H2ZH97_Ciona_savignyi,10,0,0,10,0,0" ) ) {
+ // System.out.println( m.getRowAsString( 3, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 4, ',' ).equals( "Q1RLW1_Danio_rerio,0,0,0,0,10,0" ) ) {
+ // System.out.println( m.getRowAsString( 4, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 5, ',' ).equals( "Q6DIN7_Xenopus_tropicalis,0,0,0,0,0,10" ) ) {
+ // System.out.println( m.getRowAsString( 5, ',' ) );
+ // return false;
+ // }
+ //
+ // r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxcode_1.run1.t" ),
+ // new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ // ALGORITHM.GSDIR,
+ // REROOTING.BY_ALGORITHM,
+ // "",
+ // -1,
+ // -1,
+ // true,
+ // false,
+ // true );
+ // if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.CODE ) {
+ // return false;
+ // }
+ // if ( r0.getAnalyzedGeneTrees().length != 201 ) {
+ // return false;
+ // }
+ // if ( r0.getExtNodesOfAnalyzedGeneTrees() != 3 ) {
+ // return false;
+ // }
+ // if ( r0.getIntNodesOfAnalyzedGeneTrees() != 2 ) {
+ // return false;
+ // }
+ // if ( r0.getRemovedGeneTreeNodes().size() != 3 ) {
+ // return false;
+ // }
+ // if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 0 ) {
+ // return false;
+ // }
+ // m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ // if ( !m.getRowAsString( 0, ',' ).equals( "BCDO2_HUMAN,201,201,201" ) ) {
+ // System.out.println( m.getRowAsString( 0, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 1, ',' ).equals( "Q1RLW1_DANRE,201,201,201" ) ) {
+ // System.out.println( m.getRowAsString( 1, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 2, ',' ).equals( "Q6DIN7_XENTR,201,201,201" ) ) {
+ // System.out.println( m.getRowAsString( 2, ',' ) );
+ // return false;
+ // }
+ //
+ //
+ // r0 = RIO.executeAnalysis( new File( PATH_TO_TEST_DATA + "rio_mb_taxcode_2.run1.t" ),
+ // new File( PATH_TO_TEST_DATA + "rio_tol_1.xml" ),
+ // ALGORITHM.GSDIR,
+ // REROOTING.BY_ALGORITHM,
+ // "",
+ // -1,
+ // -1,
+ // true,
+ // false,
+ // true );
+ // if ( r0.getGSDIRtaxCompBase() != TaxonomyComparisonBase.CODE ) {
+ // return false;
+ // }
+ // if ( r0.getAnalyzedGeneTrees().length != 201 ) {
+ // return false;
+ // }
+ // if ( r0.getExtNodesOfAnalyzedGeneTrees() != 6 ) {
+ // return false;
+ // }
+ // if ( r0.getIntNodesOfAnalyzedGeneTrees() != 5 ) {
+ // return false;
+ // }
+ // if ( r0.getRemovedGeneTreeNodes().size() != 0 ) {
+ // return false;
+ // }
+ // if ( ForesterUtil.roundToInt( r0.getDuplicationsStatistics().median() ) != 1 ) {
+ // return false;
+ // }
+ // m = RIO.calculateOrthologTable( r0.getAnalyzedGeneTrees(), true );
+ // if ( !m.getRowAsString( 0, ',' ).equals( "A7SHU1_NEMVE&1,201,201,200,200,200,200" ) ) {
+ // System.out.println( m.getRowAsString( 0, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 1, ',' ).equals( "BCDO2_HUMAN+,201,201,200,200,200,43" ) ) {
+ // System.out.println( m.getRowAsString( 1, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 2, ',' ).equals( "BCDO2_MOUSE,200,200,201,201,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 2, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 3, ',' ).equals( "CIOSA,200,200,201,201,201,201" ) ) {
+ // System.out.println( m.getRowAsString( 3, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 4, ',' ).equals( "Q1RLW1_DANRE/12-45,200,200,201,201,201,43" ) ) {
+ // System.out.println( m.getRowAsString( 4, ',' ) );
+ // return false;
+ // }
+ // if ( !m.getRowAsString( 5, ',' ).equals( "Q6DIN7_XENTR-LOUSE,200,43,43,201,43,201" ) ) {
+ // System.out.println( m.getRowAsString( 5, ',' ) );
+ // return false;
+ // }