Task::ReportResult GTest_DNASequenceQualityScores::report() { GObject *obj = getContext<GObject>(this, objContextName); if(obj==NULL){ stateInfo.setError(QString("wrong value: %1").arg(OBJ_ATTR)); return ReportResult_Finished; } U2SequenceObject * mySequence = qobject_cast<U2SequenceObject*>(obj); if(mySequence==NULL){ stateInfo.setError(QString("Can't cast to sequence from: %1").arg(obj->getGObjectName())); return ReportResult_Finished; } const DNAQuality& quality = mySequence->getQuality(); if (quality.isEmpty()) { stateInfo.setError("Sequence doesn't have quality scores"); return ReportResult_Finished; } if (quality.qualCodes != qualityScores) { stateInfo.setError( QString("Quality scores are not valid! The score is %1, expected %2").arg(quality.qualCodes.constData()).arg(qualityScores.constData())); return ReportResult_Finished; } return ReportResult_Finished; }
Task::ReportResult GTest_DNASequenceQualityValue::report() { GObject *obj = getContext<GObject>(this, objContextName); if(obj==NULL){ stateInfo.setError(QString("wrong value: %1").arg(OBJ_ATTR)); return ReportResult_Finished; } U2SequenceObject * mySequence = qobject_cast<U2SequenceObject*>(obj); if(mySequence==NULL){ stateInfo.setError(QString("Can't cast to sequence from: %1").arg(obj->getGObjectName())); return ReportResult_Finished; } const DNAQuality& quality = mySequence->getQuality(); if ( (pos < 0) || (pos > quality.qualCodes.count() - 1 ) ) { stateInfo.setError(QString("Quality scores doesn't have position %1").arg(pos)); return ReportResult_Finished; } int val = quality.getValue(pos); if (val != expectedVal) { stateInfo.setError( QString("Quality score values do not match! The score is %1, expected %2").arg(val).arg(expectedVal)); return ReportResult_Finished; } return ReportResult_Finished; }