Class: Remi::BusinessRules::Tester

Inherits:
Object
  • Object
show all
Defined in:
lib/remi/cucumber/business_rules.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(job_name) ⇒ Tester

Returns a new instance of Tester.



85
86
87
88
89
90
91
92
93
94
95
96
97
# File 'lib/remi/cucumber/business_rules.rb', line 85

def initialize(job_name)
  job_class_name = "#{job_name.gsub(/\s/,'')}Job"
  @job = Object.const_get(job_class_name).new

  @job_sources = DataSubjectCollection.new
  @job_targets = DataSubjectCollection.new

  @sources = DataSubjectCollection.new
  @targets = DataSubjectCollection.new
  @examples = DataExampleCollection.new

  @filestore = Filestore.new
end

Instance Attribute Details

#examplesObject (readonly)

Returns the value of attribute examples.



104
105
106
# File 'lib/remi/cucumber/business_rules.rb', line 104

def examples
  @examples
end

#filestoreObject (readonly)

Returns the value of attribute filestore.



105
106
107
# File 'lib/remi/cucumber/business_rules.rb', line 105

def filestore
  @filestore
end

#jobObject (readonly)

Returns the value of attribute job.



99
100
101
# File 'lib/remi/cucumber/business_rules.rb', line 99

def job
  @job
end

#job_sourcesObject (readonly)

Returns the value of attribute job_sources.



100
101
102
# File 'lib/remi/cucumber/business_rules.rb', line 100

def job_sources
  @job_sources
end

#job_targetsObject (readonly)

Returns the value of attribute job_targets.



101
102
103
# File 'lib/remi/cucumber/business_rules.rb', line 101

def job_targets
  @job_targets
end

#sourcesObject (readonly)

Returns the value of attribute sources.



102
103
104
# File 'lib/remi/cucumber/business_rules.rb', line 102

def sources
  @sources
end

#targetsObject (readonly)

Returns the value of attribute targets.



103
104
105
# File 'lib/remi/cucumber/business_rules.rb', line 103

def targets
  @targets
end

Instance Method Details

#add_example(example_name, example_table) ⇒ Object



138
139
140
# File 'lib/remi/cucumber/business_rules.rb', line 138

def add_example(example_name, example_table)
  @examples.add_example(example_name, example_table)
end

#add_job_source(name) ⇒ Object



107
108
109
110
# File 'lib/remi/cucumber/business_rules.rb', line 107

def add_job_source(name)
  raise "Unknown source #{name} for job" unless @job.methods.include? name.symbolize
  @job_sources.add_subject(name, @job.send(name.symbolize))
end

#add_job_target(name) ⇒ Object



112
113
114
115
# File 'lib/remi/cucumber/business_rules.rb', line 112

def add_job_target(name)
  raise "Unknown target #{name} for job" unless @job.methods.include? name.symbolize
  @job_targets.add_subject(name, @job.send(name.symbolize))
end

#add_source(name) ⇒ Object



121
122
123
# File 'lib/remi/cucumber/business_rules.rb', line 121

def add_source(name)
  @sources.add_subject(name, @job.send(name.symbolize))
end

#add_target(name) ⇒ Object



129
130
131
# File 'lib/remi/cucumber/business_rules.rb', line 129

def add_target(name)
  @targets.add_subject(name, @job.send(name.symbolize))
end

#run_transformsObject



142
143
144
# File 'lib/remi/cucumber/business_rules.rb', line 142

def run_transforms
  @job.run_all_transforms
end

#set_job_parameter(name, value) ⇒ Object



117
118
119
# File 'lib/remi/cucumber/business_rules.rb', line 117

def set_job_parameter(name, value)
  @job.params[name.to_sym] = value
end

#sourceObject



125
126
127
# File 'lib/remi/cucumber/business_rules.rb', line 125

def source
  @sources.only
end

#targetObject



133
134
135
# File 'lib/remi/cucumber/business_rules.rb', line 133

def target
  @targets.only
end