Class: RSpecPuppetUtils::TemplateHarness
- Inherits:
-
Object
- Object
- RSpecPuppetUtils::TemplateHarness
- Defined in:
- lib/template_harness.rb
Defined Under Namespace
Classes: Isolator
Instance Method Summary collapse
-
#initialize(template, scope = nil) ⇒ TemplateHarness
constructor
A new instance of TemplateHarness.
- #run ⇒ Object
- #set(name, value) ⇒ Object
Constructor Details
#initialize(template, scope = nil) ⇒ TemplateHarness
Returns a new instance of TemplateHarness.
7 8 9 10 |
# File 'lib/template_harness.rb', line 7 def initialize(template, scope = nil) @template = template @isolator = Isolator.new(scope) end |
Instance Method Details
#run ⇒ Object
17 18 19 20 21 22 23 24 |
# File 'lib/template_harness.rb', line 17 def run b = @isolator.get_binding inline = !File.exists?(@template) template_string = inline ? @template : File.new(@template).read template = ERB.new(template_string, 0, '-') template.filename = File.(@template) unless inline template.result b end |
#set(name, value) ⇒ Object
12 13 14 15 |
# File 'lib/template_harness.rb', line 12 def set(name, value) var_name = name.start_with?('@') ? name : "@#{name}" @isolator.instance_variable_set(var_name, value) end |