class Protor::Entry

Constants

VALID_LABEL_NAME
VALID_LABEL_VALUE
VALID_NAME
VALID_TYPE

Attributes

additional[R]
labels[R]
name[R]
type[R]
value[RW]

Public Class Methods

new(name, type, value, labels = nil, additional = nil) click to toggle source
# File lib/protor/entry.rb, line 11
def initialize(name, type, value, labels = nil, additional = nil)
  @name       = name.to_s
  @type       = type
  @value      = value
  @labels     = labels || {}
  @additional = additional || []

  verify
end

Private Instance Methods

verify() click to toggle source
# File lib/protor/entry.rb, line 23
def verify
  raise InvalidNameError, name unless name =~ VALID_NAME
  raise InvalidTypeError, type unless VALID_TYPE.include?(type)
  labels.each do |k, v|
    raise InvalidLabelNameError, labels unless k =~ VALID_LABEL_NAME
    raise InvalidLabelValueError, labels unless v =~ VALID_LABEL_VALUE
  end
  additional.each do |a|
    raise InvalidAdditionalError, additional unless a.is_a?(Numeric)
  end
end