JAL-3853 patch sequence annotation report code and tweak the test. When merging from...
authorJim Procter <j.procter@dundee.ac.uk>
Thu, 22 Jul 2021 19:36:13 +0000 (20:36 +0100)
committerJim Procter <j.procter@dundee.ac.uk>
Thu, 22 Jul 2021 19:36:13 +0000 (20:36 +0100)
src/jalview/io/SequenceAnnotationReport.java
test/jalview/io/SequenceAnnotationReportTest.java

index d5c3ed3..6adc419 100644 (file)
@@ -488,20 +488,27 @@ public class SequenceAnnotationReport
       ds = ds.getDatasetSequence();
     }
 
+    
     /*
      * add any annotation scores
      */
     AlignmentAnnotation[] anns = ds.getAnnotation();
-    for (int i = 0; anns != null && i < anns.length; i++)
-    {
-      AlignmentAnnotation aa = anns[i];
-      if (aa != null && aa.hasScore() && aa.sequenceRef != null)
+    if (anns!=null && anns.length>0) {
+      boolean first=true;
+      for (int i = 0; anns != null && i < anns.length; i++)
       {
-        sb.append("<br>").append(aa.label).append(": ")
-                .append(aa.getScore());
+        AlignmentAnnotation aa = anns[i];
+        if (aa != null && aa.hasScore() && aa.sequenceRef != null)
+        {
+          if (first) {
+                 sb.append("<br>").append("Annotation Scores<br>");
+                 first=false;
+          }
+          sb.append("<br>").append(aa.label).append(": ")
+                  .append(aa.getScore());
+        }
       }
     }
-
     if (showDbRefs)
     {
       maxWidth = Math.max(maxWidth, appendDbRefs(sb, ds, summary));
@@ -535,8 +542,8 @@ public class SequenceAnnotationReport
       sb.append(bitScore);
       maxWidth = Math.max(maxWidth, eValue.length());
       maxWidth = Math.max(maxWidth, bitScore.length());
+      sb.append("<br>");
     }
-    sb.append("<br>");
     sb.append("</i>");
 
     return maxWidth;
index f3a7586..35317c6 100644 (file)
@@ -290,7 +290,7 @@ public class SequenceAnnotationReportTest
     seq.addSequenceFeature(new SequenceFeature("Domain", "Ferredoxin", 5,
             10, 1f, null));
     sar.createSequenceAnnotationReport(sb, seq, true, true, null);
-    assertEquals("<i>SeqDesc</i>", sb.toString());
+    assertEquals("<i>SeqDesc<br></i>", sb.toString());
 
     /*
      * non-positional feature