X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fio%2FJSONFileTest.java;h=6e4458ee6430a0cc757dfa448af0dc4be5967972;hb=838e4f91d4a53dd315640dbc9ff6ef7a815ee576;hp=a695d3742e30b35c9f5044a0d123ea7d3b53b360;hpb=3f3c6c3a2b99fee2e726d18302af1b3320331212;p=jalview.git diff --git a/test/jalview/io/JSONFileTest.java b/test/jalview/io/JSONFileTest.java index a695d37..6e4458e 100644 --- a/test/jalview/io/JSONFileTest.java +++ b/test/jalview/io/JSONFileTest.java @@ -1,6 +1,25 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b1) + * Copyright (C) 2015 The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.io; - import static org.testng.AssertJUnit.assertNotNull; import jalview.api.AlignExportSettingI; @@ -14,8 +33,8 @@ import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceGroup; import jalview.datamodel.SequenceI; import jalview.gui.AlignFrame; +import jalview.json.binding.biojson.v1.ColourSchemeMapper; import jalview.schemes.ColourSchemeI; -import jalview.schemes.ZappoColourScheme; import java.io.IOException; import java.util.ArrayList; @@ -62,7 +81,7 @@ public class JSONFileTest private JSONFile jf; - @BeforeTest + @BeforeTest(alwaysRun = true) public void setup() throws Exception { // create and add sequences @@ -93,7 +112,6 @@ public class JSONFileTest seqs[3].addSequenceFeature(seqFeature3); seqs[4].addSequenceFeature(seqFeature4); - for (Sequence seq : seqs) { seq.setDatasetSequence(seq); @@ -106,9 +124,11 @@ public class JSONFileTest grpSeqs.add(seqs[2]); grpSeqs.add(seqs[3]); grpSeqs.add(seqs[4]); - ColourSchemeI scheme = JSONFile.getJalviewColorScheme("zappo"); SequenceGroup seqGrp = new SequenceGroup(grpSeqs, "JGroup:1883305585", - scheme, true, true, false, 21, 29); + null, true, true, false, 21, 29); + ColourSchemeI scheme = ColourSchemeMapper.getJalviewColourScheme( + "zappo", seqGrp); + seqGrp.cs = scheme; seqGrp.setShowNonconserved(false); seqGrp.setDescription(null); @@ -195,6 +215,12 @@ public class JSONFileTest { return true; } + + @Override + public boolean isCancelled() + { + return false; + } }; AppletFormatAdapter formatAdapter = new AppletFormatAdapter(); @@ -208,10 +234,12 @@ public class JSONFileTest jf.getColumnSelection(), AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT); af.getViewport().setShowSequenceFeatures(jf.isShowSeqFeatures()); - af.changeColour(jf.getColourScheme()); + String colourSchemeName = jf.getGlobalColourScheme(); + ColourSchemeI cs = ColourSchemeMapper.getJalviewColourScheme( + colourSchemeName, alignment); + af.changeColour(cs); af.getViewport().setFeaturesDisplayed(jf.getDisplayedFeatures()); - formatAdapter = new AppletFormatAdapter(af.alignPanel, exportSettings); String jsonOutput = formatAdapter.formatSequences(JSONFile.FILE_DESC, af.alignPanel.getAlignment(), false); @@ -228,7 +256,7 @@ public class JSONFileTest } - @BeforeMethod + @BeforeMethod(alwaysRun = true) public void methodSetup() { passedCount = 0; @@ -246,13 +274,13 @@ public class JSONFileTest jf = null; } - @Test + @Test(groups = { "Functional" }) public void roundTripTest() { assertNotNull("JSON roundtrip test failed!", testJsonFile); } - @Test + @Test(groups = { "Functional" }) public void testSeqParsed() { assertNotNull("Couldn't read supplied alignment data.", testAlignment); @@ -268,8 +296,8 @@ public class JSONFileTest AssertJUnit.assertEquals("Some Sequences did not pass the test", TEST_SEQ_HEIGHT, passedCount); } - - @Test + + @Test(groups = { "Functional" }) public void hiddenColsTest() { ColumnSelection cs = testJsonFile.getColumnSelection(); @@ -281,33 +309,31 @@ public class JSONFileTest "Mismatched hidden columns!"); } - @Test + @Test(groups = { "Functional" }) public void hiddenSeqsTest() { Assert.assertNotNull(testJsonFile.getHiddenSequences(), "Hidden sequence Expected but found Null"); - Assert.assertEquals(jf.getHiddenSequences().length, 1, - "Hidden sequece"); + Assert.assertEquals(jf.getHiddenSequences().length, 1, "Hidden sequece"); } - @Test + @Test(groups = { "Functional" }) public void colorSchemeTest() { - Assert.assertNotNull(testJsonFile.getColourScheme(), + Assert.assertNotNull(testJsonFile.getGlobalColourScheme(), "Colourscheme is null, parsing failed!"); - Assert.assertTrue( - testJsonFile.getColourScheme() instanceof ZappoColourScheme, + Assert.assertEquals(testJsonFile.getGlobalColourScheme(), "Zappo", "Zappo colour scheme expected!"); } - @Test + @Test(groups = { "Functional" }) public void isShowSeqFeaturesSet() { Assert.assertTrue(testJsonFile.isShowSeqFeatures(), "Sequence feature isDisplayed setting expected to be true"); } - @Test + @Test(groups = { "Functional" }) public void testGrpParsed() { Assert.assertNotNull(testAlignment.getGroups()); @@ -323,7 +349,7 @@ public class JSONFileTest TEST_GRP_HEIGHT, passedCount); } - @Test + @Test(groups = { "Functional" }) public void testAnnotationParsed() { Assert.assertNotNull(testAlignment.getAlignmentAnnotation()); @@ -397,13 +423,14 @@ public class JSONFileTest + actualGrp.getStartRes()); System.out.println(expectedGrp.getEndRes() + " | " + actualGrp.getEndRes()); + System.out.println(expectedGrp.cs + " | " + actualGrp.cs); if (expectedGrp.getName().equals(actualGrp.getName()) && expectedGrp.getColourText() == actualGrp.getColourText() && expectedGrp.getDisplayBoxes() == actualGrp.getDisplayBoxes() && expectedGrp.getIgnoreGapsConsensus() == actualGrp .getIgnoreGapsConsensus() - && expectedGrp.cs.equals(actualGrp.cs) + && (expectedGrp.cs.getClass().equals(actualGrp.cs.getClass())) && expectedGrp.getSequences().size() == actualGrp .getSequences().size() && expectedGrp.getStartRes() == actualGrp.getStartRes()