1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#! /usr/bin/env ruby
require 'spec_helper'
require 'puppet/pops'
require_relative 'parser_rspec_helper'
describe "egrammar parsing of capability mappings" do
include ParserRspecHelper
context "when parsing 'produces'" do
it "the ast contains produces and attributes" do
prog = "Foo produces Sql { name => value }"
ast = "(produces Foo Sql ((name => value)))"
expect(dump(parse(prog))).to eq(ast)
end
it "optional end comma is allowed" do
prog = "Foo produces Sql { name => value, }"
ast = "(produces Foo Sql ((name => value)))"
expect(dump(parse(prog))).to eq(ast)
end
end
context "when parsing 'consumes'" do
it "the ast contains consumes and attributes" do
prog = "Foo consumes Sql { name => value }"
ast = "(consumes Foo Sql ((name => value)))"
expect(dump(parse(prog))).to eq(ast)
end
it "optional end comma is allowed" do
prog = "Foo consumes Sql { name => value, }"
ast = "(consumes Foo Sql ((name => value)))"
expect(dump(parse(prog))).to eq(ast)
end
end
end
|