class Retrospec::Puppet::RspecDumperFull
Public Instance Methods
dump_AccessExpression(o)
click to toggle source
x prints as (slice x y)
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 139 def dump_AccessExpression o if o.keys.size <= 1 ["slice", do_dump(o.left_expr), do_dump(o.keys[0])] else ["slice", do_dump(o.left_expr), do_dump(o.keys)] end end
dump_AndExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 191 def dump_AndExpression o ["&&", do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_Application(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 130 def dump_Application o ["application", o.name, do_dump(o.parameters), do_dump(o.body)] end
dump_ArithmeticExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 134 def dump_ArithmeticExpression o [o.operator.to_s, do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_AttributeOperation(o)
click to toggle source
Produces (name => expr) or (name +> expr)
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 112 def dump_AttributeOperation o key = o.attribute_name value = do_dump(o.value_expr) || nil [key.inspect, o.operator, "#{value},"] end
dump_AttributesOperation(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 203 def dump_AttributesOperation o ['* =>', do_dump(o.expr)] end
dump_CallMethodExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 98 def dump_CallMethodExpression o result = [o.rval_required ? "call-method" : "invoke-method", do_dump(o.functor_expr)] o.arguments.collect {|a| result << do_dump(a) } result << do_dump(o.lambda) if o.lambda result end
dump_CallNamedFunctionExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 89 def dump_CallNamedFunctionExpression o func_name = dump o.functor_expr args = o.arguments.collect {|a| do_dump(a) }.join(',') # because rspec-puppet cannot check if functions are called within a manifest # I don't think we can build a good test case here like # we could also mock the function here as well ["it { is_expected.to call(#{func_name}).with(#{args})}"] end
dump_CapabilityMapping(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 301 def dump_CapabilityMapping o [o.kind, do_dump(o.component), o.capability, do_dump(o.mappings)] end
dump_CaseExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 12 def dump_CaseExpression o expr_name = dump(o.test.expr) expr_value = dump(o.test) result = ["describe '#{expr_name}'",:do] result << ['let(:params)',:do] #TODO figure out if the expr_name is a param and than we can mock it here result << 'params.merge({})' # merge in the parent level params result << [:end] result << [:break,'let(:facts)', :do] result << [:end] o.options.each do |s| result << :break << do_dump(s) end result << :dedent end
dump_CaseOption(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 28 def dump_CaseOption o expr_name = dump(o.eContainer.test.expr) expr_value = dump(o.eContainer.test) result = [] o.values.each do |x| test_name = do_dump(x) result << ["context #{test_name}", :do] result << [do_dump(o.then_expr)] end result << [:end] result end
dump_CollectExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 151 def dump_CollectExpression o result = ["collect", do_dump(o.type_expr), :indent, :break, do_dump(o.query), :indent] o.operations do |ao| result << :break << do_dump(ao) end result += [:dedent, :dedent ] result end
dump_ComparisonExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 187 def dump_ComparisonExpression o "#{dump(o.left_expr)} #{o.operator} #{dump o.right_expr}" end
dump_ConcatenatedString(o)
click to toggle source
Interpolated strings are shown as (cat seg0 seg1 … segN)
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 80 def dump_ConcatenatedString o o.segments.collect {|x| do_dump(x)} end
dump_EppExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 160 def dump_EppExpression o result = ["epp"] # result << ["parameters"] + o.parameters.collect {|p| do_dump(p) } if o.parameters.size() > 0 if o.body result << do_dump(o.body) else result << [] end result end
dump_ExportedQuery(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 171 def dump_ExportedQuery o result = ["<<| |>>"] result += dump_QueryExpression(o) unless is_nop?(o.expr) result end
dump_Factory(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 126 def dump_Factory o do_dump(o.current) end
dump_HeredocExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 275 def dump_HeredocExpression(o) result = ["@(#{o.syntax})", :indent, :break, do_dump(o.text_expr), :dedent, :break] end
dump_IfExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 61 def dump_IfExpression o # this should be a test becuase if its function #Puppet::Pops::Model::CallNamedFunctionExpression case o.test when ::Puppet::Pops::Model::ComparisonExpression test_name = dump(o.test) when ::Puppet::Pops::Model::CallNamedFunctionExpression test_name = "#{dump(o.test.functor_expr)}(#{o.test.arguments.collect { |a| dump(a.expr)}})" end result << ["context #{test_name}", :do] then_name = do_dump(o.then_expr) result << then_name else_name = do_dump(o.else_expr) unless is_nop? o.else_expr result << else_name result << [:end] result end
dump_InExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 199 def dump_InExpression o ["in", do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_KeyedEntry(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 216 def dump_KeyedEntry o [do_dump(o.key), do_dump(o.value)] end
dump_LambdaExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 228 def dump_LambdaExpression o result = ["lambda"] result << ["parameters"] + o.parameters.collect {|p| do_dump(p) } if o.parameters.size > 0 if o.body result << do_dump(o.body) else result << [] end result end
dump_LiteralDefault(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 239 def dump_LiteralDefault o ":default" end
dump_LiteralFloat(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 118 def dump_LiteralFloat o o.value.to_s end
dump_LiteralHash(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 211 def dump_LiteralHash o data = o.entries.collect {|x| do_dump(x)} Hash[*data.flatten] end
dump_LiteralList(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 207 def dump_LiteralList o o.values.collect {|x| do_dump(x)} end
dump_LiteralRegularExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 247 def dump_LiteralRegularExpression o "/#{o.value.source}/" end
dump_LiteralString(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 224 def dump_LiteralString o "'#{o.value}'" end
dump_LiteralUndef(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 243 def dump_LiteralUndef o ":undef" end
dump_LiteralValue(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 122 def dump_LiteralValue o o.value.to_s end
dump_MatchExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 220 def dump_MatchExpression o [o.operator.to_s, do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_MatchesExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 147 def dump_MatchesExpression o [o.operator.to_s, do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_NamedAccessExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 255 def dump_NamedAccessExpression o [".", do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_NilClass(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 259 def dump_NilClass o ":undef" end
dump_NodeDefinition(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 279 def dump_NodeDefinition o result = ["node"] result << ["matches"] + o.host_matches.collect {|m| do_dump(m) } result << ["parent", do_dump(o.parent)] if o.parent if o.body result << do_dump(o.body) else result << [] end result end
dump_Nop(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 251 def dump_Nop o ":nop" end
dump_NotExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 263 def dump_NotExpression o ['!', dump(o.expr)] end
dump_Object(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 341 def dump_Object o [o.class.to_s, o.to_s] end
dump_OrExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 195 def dump_OrExpression o ["||", do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_ParenthesizedExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 319 def dump_ParenthesizedExpression o do_dump(o.expr) end
dump_Program(o)
click to toggle source
Hides that Program exists in the output (only its body is shown), the definitions are just references to contained classes, resource types, and nodes
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 325 def dump_Program(o) dump(o.body) end
dump_QueryExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 183 def dump_QueryExpression o [do_dump(o.expr)] end
dump_RelationshipExpression(o)
click to toggle source
defines the resource expression and outputs -> when used this would be the place to insert relationsip matchers
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 107 def dump_RelationshipExpression o [do_dump(o.left_expr), do_dump(o.right_expr)] end
dump_RenderExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 353 def dump_RenderExpression o ["render", do_dump(o.expr)] end
dump_RenderStringExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 349 def dump_RenderStringExpression o ["render-s", " '#{o.value}'"] end
dump_ReservedWord(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 315 def dump_ReservedWord o [ 'reserved', o.word ] end
dump_ResourceBody(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 41 def dump_ResourceBody o type_name = do_dump(o.eContainer.type_name).gsub('::', '__') title = do_dump(o.title).inspect #TODO remove the :: from the front of the title if exists result = ['it', :do, "is_expected.to contain_#{type_name}(#{title})"] # this determies if we should use the with() or not if o.operations.count > 0 result << [ :indent, :break,'.with({', :indent, :break] o.operations.each do |p| result << [do_dump(p), :break] end unless [::Puppet::Pops::Model::CallNamedFunctionExpression, ::Puppet::Pops::Model::BlockExpression].include?(o.eContainer.eContainer.class) result << dump_Resource_Relationship(o) end result << [ :dedent, :break, '})', :indent, :dedent, :dedent] end result << [:end, :break] result end
dump_ResourceDefaultsExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 357 def dump_ResourceDefaultsExpression o form = o.form == :regular ? '' : o.form.to_s + "-" result = [form+"resource-defaults", do_dump(o.type_ref), :indent] o.operations.each do |p| result << :break << do_dump(p) end result << :dedent result end
dump_ResourceOverrideExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 305 def dump_ResourceOverrideExpression o form = o.form == :regular ? '' : o.form.to_s + "-" result = [form+"override", do_dump(o.resources), :indent] o.operations.each do |p| result << :break << do_dump(p) end result << :dedent result end
dump_SelectorEntry(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 333 def dump_SelectorEntry o [do_dump(o.matching_expr), "=>", do_dump(o.value_expr)] end
dump_SelectorExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 329 def dump_SelectorExpression o ["?", do_dump(o.left_expr)] + o.selectors.collect {|x| do_dump(x) } end
dump_SiteDefinition(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 291 def dump_SiteDefinition o result = ["site"] if o.body result << do_dump(o.body) else result << [] end result end
dump_SubLocatedExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 337 def dump_SubLocatedExpression o ["sublocated", do_dump(o.expr)] end
dump_TextExpression(o)
click to toggle source
Interpolation (to string) shown as (str expr)
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 85 def dump_TextExpression o [do_dump(o.expr)] end
dump_UnaryMinusExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 267 def dump_UnaryMinusExpression o ['-', do_dump(o.expr)] end
dump_UnfoldExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 271 def dump_UnfoldExpression o ['unfold', do_dump(o.expr)] end
dump_UnlessExpression(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 367 def dump_UnlessExpression o result = ["unless", do_dump(o.test), :indent, :break, ["then", :indent, do_dump(o.then_expr), :dedent]] result += [:break, ["else", :indent, do_dump(o.else_expr), :dedent], :dedent] unless is_nop? o.else_expr result end
dump_VirtualQuery(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 177 def dump_VirtualQuery o result = ["<| |>"] result += dump_QueryExpression(o) unless is_nop?(o.expr) result end
is_nop?(o)
click to toggle source
# File lib/retrospec/plugins/v1/plugin/generators/serializers/rspec_dumper_full.rb, line 345 def is_nop? o o.nil? || o.is_a?(::Puppet::Pops::Model::Nop) end