phylotastic hackathon at NESCENT 120606
[jalview.git] / forester / java / src / org / forester / test / Test.java
index adcbac9..b1b35ee 100644 (file)
@@ -103,6 +103,7 @@ import org.forester.util.DescriptiveStatistics;
 import org.forester.util.ForesterConstants;
 import org.forester.util.ForesterUtil;
 import org.forester.util.GeneralTable;
+import org.forester.util.SequenceIdParser;
 import org.forester.ws.uniprot.DatabaseTools;
 import org.forester.ws.uniprot.SequenceDatabaseEntry;
 import org.forester.ws.uniprot.UniProtTaxonomy;
@@ -171,6 +172,19 @@ public final class Test {
             System.exit( -1 );
         }
         final long start_time = new Date().getTime();
+        
+        
+       
+        System.out.print( "Sequence id parsing: " );
+        if (  testSequenceIdParsing() ) {
+            System.out.println( "OK." );
+            succeeded++;
+        }
+        else {
+            System.out.println( "failed." );
+            System.exit( -1 ); //TODO FIXME remove me!! ~
+            failed++;
+        }
         System.out.print( "Hmmscan output parser: " );
         if ( testHmmscanOutputParser() ) {
             System.out.println( "OK." );
@@ -8907,4 +8921,120 @@ public final class Test {
         }
         return true;
     }
+    
+    private static boolean testSequenceIdParsing() {
+        try {
+            Identifier id = SequenceIdParser.parse( "gb_ADF31344_segmented_worms_" );
+            if ( id == null
+                 || ForesterUtil.isEmpty( id.getValue() )
+                 || ForesterUtil.isEmpty( id.getProvider() )
+                 || !id.getValue().equals( "ADF31344" )
+                 || !id.getProvider().equals( "genbank" ) ) {
+                if ( id != null ) {
+                    System.out.println( "value   =" + id.getValue() );
+                    System.out.println( "provider=" + id.getProvider() );
+                }
+                return false;
+            }
+            //
+            id = SequenceIdParser.parse( "segmented worms|gb_ADF31344" );
+            if ( id == null
+                 || ForesterUtil.isEmpty( id.getValue() )
+                 || ForesterUtil.isEmpty( id.getProvider() )
+                 || !id.getValue().equals( "ADF31344" )
+                 || !id.getProvider().equals( "genbank" ) ) {
+                if ( id != null ) {
+                    System.out.println( "value   =" + id.getValue() );
+                    System.out.println( "provider=" + id.getProvider() );
+                }
+                return false;
+            }
+            //
+            id = SequenceIdParser.parse( "segmented worms gb_ADF31344 and more" );
+            if ( id == null
+                 || ForesterUtil.isEmpty( id.getValue() )
+                 || ForesterUtil.isEmpty( id.getProvider() )
+                 || !id.getValue().equals( "ADF31344" )
+                 || !id.getProvider().equals( "genbank" ) ) {
+                if ( id != null ) {
+                    System.out.println( "value   =" + id.getValue() );
+                    System.out.println( "provider=" + id.getProvider() );
+                }
+                return false;
+            }
+           
+            // 
+            id = SequenceIdParser.parse( "gb_AAA96518_1" );
+            if ( id == null
+                 || ForesterUtil.isEmpty( id.getValue() )
+                 || ForesterUtil.isEmpty( id.getProvider() )
+                 || !id.getValue().equals( "AAA96518" )
+                 || !id.getProvider().equals( "genbank" ) ) {
+                if ( id != null ) {
+                    System.out.println( "value   =" + id.getValue() );
+                    System.out.println( "provider=" + id.getProvider() );
+                }
+                return false;
+            }
+            // 
+            id = SequenceIdParser.parse( "gb_EHB07727_1_rodents_" );
+            if ( id == null
+                 || ForesterUtil.isEmpty( id.getValue() )
+                 || ForesterUtil.isEmpty( id.getProvider() )
+                 || !id.getValue().equals( "EHB07727" )
+                 || !id.getProvider().equals( "genbank" ) ) {
+                if ( id != null ) {
+                    System.out.println( "value   =" + id.getValue() );
+                    System.out.println( "provider=" + id.getProvider() );
+                }
+                return false;
+            }
+            // 
+            id = SequenceIdParser.parse( "dbj_BAF37827_1_turtles_" );
+            if ( id == null
+                 || ForesterUtil.isEmpty( id.getValue() )
+                 || ForesterUtil.isEmpty( id.getProvider() )
+                 || !id.getValue().equals( "BAF37827" )
+                 || !id.getProvider().equals( "genbank" ) ) {
+                if ( id != null ) {
+                    System.out.println( "value   =" + id.getValue() );
+                    System.out.println( "provider=" + id.getProvider() );
+                }
+                return false;
+            }
+            // 
+            id = SequenceIdParser.parse( "emb_CAA73223_1_primates_" );
+            if ( id == null
+                 || ForesterUtil.isEmpty( id.getValue() )
+                 || ForesterUtil.isEmpty( id.getProvider() )
+                 || !id.getValue().equals( "CAA73223" )
+                 || !id.getProvider().equals( "genbank" ) ) {
+                if ( id != null ) {
+                    System.out.println( "value   =" + id.getValue() );
+                    System.out.println( "provider=" + id.getProvider() );
+                }
+                return false;
+            }
+            // 
+//            id = SequenceIdParser.parse( "mites|ref_XP_002434188_1" );
+//            if ( id == null
+//                 || ForesterUtil.isEmpty( id.getValue() )
+//                 || ForesterUtil.isEmpty( id.getProvider() )
+//                 || !id.getValue().equals( "002434188" )
+//                 || !id.getProvider().equals( "genbank" ) ) {
+//                if ( id != null ) {
+//                    System.out.println( "value   =" + id.getValue() );
+//                    System.out.println( "provider=" + id.getProvider() );
+//                }
+//                return false;
+//            }
+            
+            // lcl_91970_unknown_
+        }
+        catch ( final Exception e ) {
+            e.printStackTrace( System.out );
+            return false;
+        }
+        return true;
+    }
 }