module Assay

Public Class Methods

assertions() click to toggle source

Returns a list of Assertion subclasses.

# File lib/assay.rb, line 31
def self.assertions
  Assertion.subclasses
end
color=(boolean) click to toggle source

Set ANSI color mode. Default is false, so set to ‘true` to get ANSI color in some error messages.

@example

Assay.color = true
# File lib/assay.rb, line 42
def self.color=(boolean)
  if boolean
    require 'ansi/diff'
    $ansi = true
  else
    $ansi = false
  end 
end
const_missing(name) click to toggle source

Check metadata for missing constants.

Calls superclass method
# File lib/assay.rb, line 24
def self.const_missing(name)
  metadata[name.to_s.downcase] || super(name)
end
lookup(symbol) click to toggle source

Lookup assay class by operator or name.

# File lib/assay.rb, line 54
def self.lookup(symbol)
  lookup_by_operator(symbol) || lookup_by_name(symbol)
end
lookup_by_name(name=nil) click to toggle source

If operator is not given, returns a hash table of assertion classes indexed by assertive name.

# File lib/assay.rb, line 70
def self.lookup_by_name(name=nil)
  Assertion.by_name(name)
end
lookup_by_operator(operator=nil) click to toggle source

If operator is not given, returns a hash table of assertion classes indexed by operator.

# File lib/assay.rb, line 62
def self.lookup_by_operator(operator=nil)
  Assertion.by_operator(operator)
end
metadata() click to toggle source

Returns Hash table of project metadata.

# File lib/assay.rb, line 14
def self.metadata
  @spec ||= (
    require 'yaml'
    YAML.load(File.new(File.dirname(__FILE__) + '/assay.yml'))
  )
end