3 import jalview.datamodel.Alignment;
4 import jalview.datamodel.Sequence;
6 import java.io.IOException;
7 import java.util.Iterator;
9 import org.json.simple.JSONArray;
10 import org.json.simple.JSONObject;
11 import org.json.simple.parser.JSONParser;
12 import org.json.simple.parser.ParseException;
13 import org.junit.Assert;
14 import org.junit.Test;
16 import com.json.JSONException;
18 public class BioJsHTMLOutputTest
23 public void getJalviewAlignmentAsJsonString()
25 BioJsHTMLOutput bioJsHtmlOuput = new BioJsHTMLOutput(null, null);
26 bioJsHtmlOuput.setGlobalColorScheme("Zappo");
28 Sequence[] seqs = new Sequence[1];
29 Sequence seq = new Sequence("name", "ABCDEFGHIJKLMNOPQRSTUVWXYZ", 1, 26);
30 // SequenceFeature seqFeature = new SequenceFeature("type", "desc",
31 // "status", 1, 5, "jalview");
32 // seq.addSequenceFeature(seqFeature);
33 seq.setDatasetSequence(seq);
36 Alignment al = new Alignment(seqs);
40 JSONParser jsonParser = new JSONParser();
41 String actualJsonString = bioJsHtmlOuput
42 .getJalviewAlignmentAsJsonString(al);
44 JSONObject actualJsonObj = (JSONObject) jsonParser.parse(actualJsonString);
46 // System.out.println("Output : " + actualJsonString);
47 Assert.assertTrue(actualJsonObj.get("globalColorScheme") != null);
48 Assert.assertTrue((actualJsonObj.get("globalColorScheme").toString()).equals("zappo"));
50 Assert.assertTrue(actualJsonObj.get("webStartUrl") != null);
51 Assert.assertTrue((actualJsonObj.get("webStartUrl").toString())
52 .equals("http://www.jalview.org/services/launchApp"));
54 JSONArray actualSeqJsonObj = (JSONArray) actualJsonObj.get("seqs");
55 Assert.assertTrue(actualSeqJsonObj != null);
56 Assert.assertTrue(actualSeqJsonObj.size() == 1);
58 @SuppressWarnings("unchecked")
59 Iterator<JSONObject> jsonIter = actualSeqJsonObj.iterator();
60 JSONObject jsonSeq = jsonIter.next();
61 Assert.assertTrue(jsonSeq != null);
63 Assert.assertTrue("'name' cannot be null!",
64 jsonSeq.get("name") != null);
65 Assert.assertTrue("Expected name mismatched!",
66 (jsonSeq.get("name").toString())
67 .equals("name/1-26"));
69 Assert.assertTrue("'seq' cannot be null!", jsonSeq.get("seq") != null);
70 Assert.assertTrue("Expected sequence mismatched!", (jsonSeq
71 .get("seq").toString())
72 .equals("ABCDEFGHIJKLMNOPQRSTUVWXYZ"));
74 Assert.assertTrue("'id' cannot be null!", jsonSeq.get("id") != null);
75 Assert.assertTrue("Expected id mismatched!",
76 (jsonSeq.get("id").toString()).equals("1"));
78 Assert.assertTrue("'start' cannot be null!",
79 jsonSeq.get("start") != null);
80 Assert.assertTrue("Expected start mismatched!",
81 (jsonSeq.get("start").toString()).equals("1"));
83 Assert.assertTrue("'end' cannot be null!", jsonSeq.get("end") != null);
84 Assert.assertTrue("Expected end mismatched!",
85 (jsonSeq.get("end").toString()).equals("26"));
87 Assert.assertTrue("'features' cannot be null!",
88 jsonSeq.get("features") != null);
89 Assert.assertTrue("Expected features mismatched!",
90 jsonSeq.get("features").toString().equals("[]"));
92 } catch (IOException e)
95 } catch (JSONException e)
98 } catch (ParseException e)