self
end
+
+ # Method to calculate and return the mean quality score.
+ def scores_mean
+ raise SeqError, "Missing qual in entry" if self.qual.nil?
+
+ na_qual = NArray.to_na(self.qual, "byte")
+ (na_qual - SCORE_BASE).mean
+ end
end
__END__
@entry.qual = 'BCDEFGHI'
assert_equal('BCDEFGHI', @entry.convert_scores!('illumina18', 'illumina18').qual)
end
+
+ def test_Seq_scores_mean_without_qual_raises
+ @entry.qual = nil
+ assert_raise(SeqError) { @entry.scores_mean }
+ end
+
+ def test_Seq_scores_mean_returns_correctly
+ @entry.qual = '@@hh'
+ assert_equal(20.0, @entry.scores_mean)
+ end
end
__END__