class PactBroker::Webhooks::Render
Constants
- DEFAULT_ESCAPER
- TEMPLATE_PARAMETER_REGEXP
Public Class Methods
call(template, params, &escaper)
click to toggle source
# File lib/pact_broker/webhooks/render.rb, line 17 def self.call(template, params, &escaper) render_template(escape_params(params, escaper || DEFAULT_ESCAPER), template) end
escape_params(params, escaper)
click to toggle source
# File lib/pact_broker/webhooks/render.rb, line 28 def self.escape_params(params, escaper) params.keys.each_with_object({}) do | key, new_params | new_params[key] = escaper.call(params[key]) end end
includes_parameter?(value)
click to toggle source
# File lib/pact_broker/webhooks/render.rb, line 9 def self.includes_parameter?(value) value =~ TEMPLATE_PARAMETER_REGEXP end
render_template(params, template)
click to toggle source
# File lib/pact_broker/webhooks/render.rb, line 22 def self.render_template(params, template) params.inject(template) do | agg, (key, value) | agg.gsub("${#{key}}", value) end end
render_with_placeholder(value, placeholder = "placeholder")
click to toggle source
# File lib/pact_broker/webhooks/render.rb, line 13 def self.render_with_placeholder(value, placeholder = "placeholder") value.gsub(TEMPLATE_PARAMETER_REGEXP, placeholder) end