Sha256: b3fa2f516ef80a3d1928efe30436d18400a0531a58a39925546191aaa1166b22

Contents?: true

Size: 1.22 KB

Versions: 3

Compression:

Stored size: 1.22 KB

Contents

module GeneValidator
  # This is an abstract class extended
  # by all validation classes
  class ValidationTest
    attr_accessor :type
    attr_accessor :prediction
    attr_accessor :hits
    attr_accessor :short_header
    attr_accessor :header
    attr_accessor :cli_name
    attr_accessor :description
    attr_accessor :validation_report
    attr_accessor :running_time

    ##
    # Initilizes the object
    # Params:
    # +type+: type of the predicted sequence (:nucleotide or :protein)
    # +prediction+: a +Sequence+ object representing the blast query
    # +hits+: a vector of +Sequence+ objects (representing blast hits)
    # +argv+: aditional arguments if needed
    def initialize(type, prediction, hits = nil, *_argv)
      @type              = type
      @prediction        = prediction
      @hits              = hits
      @short_header      = 'NewVal'
      @header            = 'New Validation'
      @running_time      = 0
      @cli_name          = 'all'
      @description       = 'No description available.'
      @validation_report = ValidationReport.new('Not enough evidence')
    end

    def run
      fail 'run method should be implemented by all classes that extend' \
           ' ValidationTest'
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
genevalidator-1.6.1 lib/genevalidator/validation_test.rb
genevalidator-1.6.0 lib/genevalidator/validation_test.rb
genevalidator-1.5.6 lib/genevalidator/validation_test.rb