X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=test%2Fjalview%2Fdatamodel%2Ffeatures%2FFeatureAttributesTest.java;h=a172a8a4b881f8d8b3961a66a913245d38fe4d71;hb=2b830243eed0188ae6704640bd24b7f99f61bc1b;hp=4b7a435cafd236f06e6a169b27cd7435a1b4603e;hpb=680885310ca5bca2a9b1bfd1c2dd79147d6f4b8d;p=jalview.git
diff --git a/test/jalview/datamodel/features/FeatureAttributesTest.java b/test/jalview/datamodel/features/FeatureAttributesTest.java
index 4b7a435..a172a8a 100644
--- a/test/jalview/datamodel/features/FeatureAttributesTest.java
+++ b/test/jalview/datamodel/features/FeatureAttributesTest.java
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ 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.datamodel.features;
import static org.testng.Assert.assertEquals;
@@ -12,6 +32,7 @@ import java.util.HashMap;
import java.util.Map;
import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import junit.extensions.PA;
@@ -20,9 +41,19 @@ public class FeatureAttributesTest
{
/**
+ * clear down attributes map before tests
+ */
+ @BeforeClass(alwaysRun = true)
+ public void setUp()
+ {
+ FeatureAttributes fa = FeatureAttributes.getInstance();
+ ((Map, ?>) PA.getValue(fa, "attributes")).clear();
+ }
+
+ /**
* clear down attributes map after tests
*/
- @AfterMethod
+ @AfterMethod(alwaysRun = true)
public void tearDown()
{
FeatureAttributes fa = FeatureAttributes.getInstance();
@@ -33,7 +64,7 @@ public class FeatureAttributesTest
* Test the method that keeps attribute names in non-case-sensitive order,
* including handling of 'compound' names
*/
- @Test(groups="Functional")
+ @Test(groups = "Functional")
public void testAttributeNameComparator()
{
FeatureAttributes fa = FeatureAttributes.getInstance();
@@ -41,22 +72,27 @@ public class FeatureAttributesTest
"comparator");
assertEquals(
- comp.compare(new String[] { "CSQ" }, new String[] { "csq" }), 0);
+ comp.compare(new String[]
+ { "CSQ" }, new String[] { "csq" }), 0);
- assertTrue(comp.compare(new String[] { "CSQ", "a" },
- new String[] { "csq" }) > 0);
+ assertTrue(
+ comp.compare(new String[]
+ { "CSQ", "a" }, new String[] { "csq" }) > 0);
- assertTrue(comp.compare(new String[] { "CSQ" }, new String[] { "csq",
- "b" }) < 0);
+ assertTrue(
+ comp.compare(new String[]
+ { "CSQ" }, new String[] { "csq", "b" }) < 0);
- assertTrue(comp.compare(new String[] { "CSQ", "AF" }, new String[] {
- "csq", "ac" }) > 0);
+ assertTrue(
+ comp.compare(new String[]
+ { "CSQ", "AF" }, new String[] { "csq", "ac" }) > 0);
- assertTrue(comp.compare(new String[] { "CSQ", "ac" }, new String[] {
- "csq", "AF" }) < 0);
+ assertTrue(
+ comp.compare(new String[]
+ { "CSQ", "ac" }, new String[] { "csq", "AF" }) < 0);
}
- @Test
+ @Test(groups = "Functional")
public void testGetMinMax()
{
SequenceFeature sf = new SequenceFeature("Pfam", "desc", 10, 20,
@@ -65,12 +101,14 @@ public class FeatureAttributesTest
assertNull(fa.getMinMax("Pfam", "kd"));
sf.setValue("domain", "xyz");
assertNull(fa.getMinMax("Pfam", "kd"));
- sf.setValue("kd", "some text");
- assertNull(fa.getMinMax("Pfam", "kd"));
sf.setValue("kd", "1.3");
assertEquals(fa.getMinMax("Pfam", "kd"), new float[] { 1.3f, 1.3f });
sf.setValue("kd", "-2.6");
assertEquals(fa.getMinMax("Pfam", "kd"), new float[] { -2.6f, 1.3f });
+ // setting 'mixed' character and numeric values wipes the min/max value
+ sf.setValue("kd", "some text");
+ assertNull(fa.getMinMax("Pfam", "kd"));
+
Map csq = new HashMap<>();
csq.put("AF", "-3");
sf.setValue("CSQ", csq);
@@ -88,7 +126,7 @@ public class FeatureAttributesTest
* Test the method that returns an attribute description, provided it is
* recorded and unique
*/
- @Test
+ @Test(groups = "Functional")
public void testGetDescription()
{
FeatureAttributes fa = FeatureAttributes.getInstance();
@@ -102,7 +140,7 @@ public class FeatureAttributesTest
assertNull(fa.getDescription("Pfam", "kd"));
}
- @Test
+ @Test(groups = "Functional")
public void testDatatype()
{
FeatureAttributes fa = FeatureAttributes.getInstance();