Class: Remi::BusinessRules::DataField
- Inherits:
-
Object
- Object
- Remi::BusinessRules::DataField
- Defined in:
- lib/remi/cucumber/business_rules.rb
Instance Method Summary collapse
-
#initialize(subject, field_name) ⇒ DataField
constructor
A new instance of DataField.
- #metadata ⇒ Object
- #name ⇒ Object
- #value ⇒ Object
- #value=(arg) ⇒ Object
- #values ⇒ Object
- #vector ⇒ Object
Constructor Details
#initialize(subject, field_name) ⇒ DataField
399 400 401 402 |
# File 'lib/remi/cucumber/business_rules.rb', line 399 def initialize(subject, field_name) @subject = subject @field_name = field_name.symbolize(subject.field_symbolizer) end |
Instance Method Details
#metadata ⇒ Object
408 409 410 |
# File 'lib/remi/cucumber/business_rules.rb', line 408 def @subject.fields[name] end |
#name ⇒ Object
404 405 406 |
# File 'lib/remi/cucumber/business_rules.rb', line 404 def name @field_name end |
#value ⇒ Object
416 417 418 419 420 |
# File 'lib/remi/cucumber/business_rules.rb', line 416 def value v = vector.to_a.uniq raise "Multiple unique values found in subject data for field #{@field_name}" if v.size > 1 v.first end |
#value=(arg) ⇒ Object
426 427 428 |
# File 'lib/remi/cucumber/business_rules.rb', line 426 def value=(arg) vector.recode! { |v| arg } end |
#values ⇒ Object
422 423 424 |
# File 'lib/remi/cucumber/business_rules.rb', line 422 def values vector.to_a.map(&:to_s) end |
#vector ⇒ Object
412 413 414 |
# File 'lib/remi/cucumber/business_rules.rb', line 412 def vector @subject.df[@field_name] end |