Class: GeneValidator::ORFValidationOutput
- Inherits:
-
ValidationReport
- Object
- ValidationReport
- GeneValidator::ORFValidationOutput
- Defined in:
- lib/genevalidator/validation_open_reading_frame.rb
Overview
Class that stores the validation output information
Instance Attribute Summary collapse
-
#coverage ⇒ Object
readonly
Returns the value of attribute coverage.
-
#mainORFFrame ⇒ Object
readonly
Returns the value of attribute mainORFFrame.
-
#orfs ⇒ Object
readonly
Returns the value of attribute orfs.
-
#result ⇒ Object
readonly
Returns the value of attribute result.
-
#threshold ⇒ Object
readonly
Returns the value of attribute threshold.
Attributes inherited from ValidationReport
#approach, #conclusion, #description, #errors, #expected, #explanation, #header, #message, #plot_files, #run_time, #short_header, #validation_result
Instance Method Summary collapse
- #conclude ⇒ Object
-
#initialize(short_header, header, description, orfs, coverage, longest_orf_frame, threshold = 80, expected = :yes) ⇒ ORFValidationOutput
constructor
A new instance of ORFValidationOutput.
- #print ⇒ Object
- #validation ⇒ Object
Methods inherited from ValidationReport
Constructor Details
#initialize(short_header, header, description, orfs, coverage, longest_orf_frame, threshold = 80, expected = :yes) ⇒ ORFValidationOutput
Returns a new instance of ORFValidationOutput.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 18 def initialize(short_header, header, description, orfs, coverage, longest_orf_frame, threshold = 80, expected = :yes) @short_header, @header, @description = short_header, header, description @orfs = orfs @coverage = coverage @threshold = threshold @expected = expected @result = validation @plot_files = [] @mainORFFrame = longest_orf_frame @approach = 'We expect the query sequence to encode a single gene,' \ ' thus it should contain one main Open Reading Frame' \ ' (ORF) that occupies most of the query sequence.' @explanation = " The longest ORF is in frame #{@mainORFFrame}, where" \ " it occupies #{(@coverage).round}% of the query" \ ' sequence.' @conclusion = conclude end |
Instance Attribute Details
#coverage ⇒ Object (readonly)
Returns the value of attribute coverage.
13 14 15 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 13 def coverage @coverage end |
#mainORFFrame ⇒ Object (readonly)
Returns the value of attribute mainORFFrame.
15 16 17 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 15 def mainORFFrame @mainORFFrame end |
#orfs ⇒ Object (readonly)
Returns the value of attribute orfs.
12 13 14 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 12 def orfs @orfs end |
#result ⇒ Object (readonly)
Returns the value of attribute result.
16 17 18 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 16 def result @result end |
#threshold ⇒ Object (readonly)
Returns the value of attribute threshold.
14 15 16 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 14 def threshold @threshold end |
Instance Method Details
#conclude ⇒ Object
38 39 40 41 42 43 44 45 46 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 38 def conclude if @result == :yes 'There is no evidence to believe that there is any problem with the' \ ' ORF of the query sequence.' else 'This only represents a portion of the query sequence. In some cases' \ ' this indicates that a frame shift exists in the query sequence.' end end |
#print ⇒ Object
48 49 50 51 52 53 54 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 48 def print @orfs.map { |elem| elem[1].length }.reduce(:+) orf_list = '' @orfs.map { |elem| orf_list << "#{elem[0]}:#{elem[1]}," } "#{(@coverage).round}% (frame #{@mainORFFrame})" end |
#validation ⇒ Object
56 57 58 |
# File 'lib/genevalidator/validation_open_reading_frame.rb', line 56 def validation (@coverage > @threshold) ? :yes : :no end |