summaryrefslogtreecommitdiff
path: root/spec/unit/pops/parser/parse_containers_spec.rb
AgeCommit message (Collapse)AuthorFilesLines
2014-08-01(PUP-2898) Add 4x style resource expressionsHenrik Lindberg1-7/+39
This changes the following: * Assignment has lower precedence than resource expressions * Local defaults are supported in resource instantiation expressions * A Resource body may have a new expression AttributesOperation that must evaluate to a hash. * Stricter validation of resource titles * Changes to TreeModelDumper wrt how BlockExpression is rendered (to improve debugging output). As a consequence many tests needed adjustments. * Tests that previously passed have been modified because of stricter validation. This also includes maintenance. Removing dead code/fixing stale comments and documentation.
2014-06-26(PUP-2682) Allow trailing comma after node matchesHenrik Lindberg1-0/+4
This adds the ability to have a trailing comma after the last match in a node expression.
2014-06-17(PUP-2727) Make new keywords acceptable as attribute names.Henrik Lindberg1-0/+19
Puppet allows keywords as attribute names in defines and parameterized classes. This was missing for the added keywords: * FUNCTION * ATTR * PRIVATE * TYPE Which caused a clash with existing types. This commit adds the new keywords to the list of accepted words in the grammar.
2013-12-05(maint) Fix parsing hostnames containing '.' as sequence instead of nameHenrik Lindberg1-7/+15
There was a problem with NAME no longer allowing '.' in names (it is only supported to enable a node to use a node match based on NAME. This changes the parser to parse a node name such as kermit.example.com as a sequence of names separated by dot.
2013-12-05(maint) Add test examples for nested naming of classesHenrik Lindberg1-0/+13
There were no tests for naming of nested classes (the naming needs to take place during parsing).
2013-12-05(perf) Make future parser use new faster lexerHenrik Lindberg1-6/+16
This makes the future parser use the new faster lexer. As a consequence features provided by the old lexer has now moved to the parser (keeping track of namestack). Locator information is still not optimized wrt the parser as the tokens/locator information are adapter to the "old" way (room for performance improvements). Tests are updated as the new lexer is both more restrictive, and in some case more relaxed (where regular expressions may occur).
2013-04-05(Maint) Remove API and Impl distinctionsAndrew Parker1-0/+175
The API and Impl modules were an interesting idea that has just been leading to confusion about where things live. Moving forward the public vs. private distinction for API purposes should be handled with @api annotations in documentation and clear responsibilities of classes and modules.