JAL-1432 updated copyright notices
[jalview.git] / test / jalview / ws / seqfetcher / DbRefFetcherTest.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
3  * Copyright (C) 2014 The Jalview Authors
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
10  *  
11  * Jalview is distributed in the hope that it will be useful, but 
12  * WITHOUT ANY WARRANTY; without even the implied warranty 
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14  * PURPOSE.  See the GNU General Public License for more details.
15  * 
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
17  * The Jalview Authors are detailed in the 'AUTHORS' file.
18  */
19 package jalview.ws.seqfetcher;
20
21 import static org.junit.Assert.*;
22
23 import java.util.ArrayList;
24 import java.util.List;
25
26 import jalview.datamodel.DBRefSource;
27 import jalview.ws.DBRefFetcher;
28 import jalview.ws.SequenceFetcher;
29 import jalview.ws.dbsources.das.api.jalviewSourceI;
30
31 import org.junit.AfterClass;
32 import org.junit.BeforeClass;
33 import org.junit.Test;
34
35 /**
36  * @author jimp
37  *
38  */
39 public class DbRefFetcherTest
40 {
41
42   /**
43    * @throws java.lang.Exception
44    */
45   @BeforeClass
46   public static void setUpBeforeClass() throws Exception
47   {
48   }
49
50   /**
51    * @throws java.lang.Exception
52    */
53   @AfterClass
54   public static void tearDownAfterClass() throws Exception
55   {
56   }
57
58   @Test
59   public void testStandardProtDbs()
60   {
61     String[] defdb = DBRefSource.PROTEINDBS;
62   List<DbSourceProxy> srces = new ArrayList<DbSourceProxy>();
63   for (String ddb : defdb)
64   {
65     SequenceFetcher sfetcher= new SequenceFetcher();
66     List<DbSourceProxy> srcesfordb = sfetcher.getSourceProxy(ddb);
67     
68     if (srcesfordb != null)
69     {
70       srces.addAll(srcesfordb);
71     }
72   }
73   DbSourceProxy uniprot=null;
74   int i=0;
75   // append the selected sequence sources to the default dbs
76   for (DbSourceProxy s:srces)
77   {
78     if (s.getDbSource().equalsIgnoreCase(DBRefSource.UNIPROT))
79     {
80       i++;
81     }
82     
83     if (s instanceof jalview.ws.dbsources.Uniprot)
84     {
85       uniprot = s;
86       break;
87     }
88   }
89           
90   assertTrue("Failed to find Uniprot source as first source amongst "+srces.size()+" sources (source was at position "+i+")", uniprot!=null && i<2);
91   }
92
93 }