summaryrefslogtreecommitdiffstats
path: root/test/language/ast/hostclass.rb
Commit message (Collapse)AuthorAgeFilesLines
* Fixed #1030 - class and definition evaluation has been significantlyLuke Kanies2008-02-111-184/+0
| | | | | | refactored, fixing this problem and making the whole interplay between the classes, definitions, and nodes, and the Compile class much cleaner.
* More AST refactoring -- each of the code wrapping classesLuke Kanies2008-02-081-8/+8
| | | | | | | | | | | just returns a resource from its evaluate() method, and all of the work is done in the evaluate_code method. This makes the code cleaner, because it means 1) evaluate() has the same prototype as all of the other AST classes, 2) evaluate() is no longer called indirectly through the Parser Resource class, and 3) the classes themselves are responsible for creating the resources, rather than it being done in the Compile class.
* Refactoring the AST classes just a bit. I realized thatLuke Kanies2008-02-081-7/+7
| | | | | | all of the evaluate() methods only ever accepted a scope, and sometimes one other option, so I switched them all to use named arguments instead of a hash.
* Renaming 'configuration' to 'catalog', fixing #954.Luke Kanies2007-12-111-1/+1
|
* Changing the test/ classes so that they work from the mainLuke Kanies2007-10-261-1/+1
| | | | | | test/ dir or from their own working dir, like the specs do. This was just a question of changing how their libraries are loaded.
* Fixing #802 -- tags are now applied before parent classes are evaluated, so ↵Luke Kanies2007-09-061-0/+17
| | | | parent classes can use tagged() to test if a node is a member of a subclass.
* Successfully modified all tests and code so that all language tests pass ↵Luke Kanies2007-09-041-5/+7
| | | | again. This is the majority of the work necessary to make the separate "configuration" object work.
* More refactoring. I have removed a few more extraneous methods from Scope, ↵Luke Kanies2007-09-031-7/+7
| | | | mostly just pointing directly to the compile, and I have begun (but commented out) the move to having resources to model each of the classes and nodes, in addition to the definitions. This will, again, enable a real Configuration object, and it will enable class versioning and similar features.
* Doing a small amount of refactoring, toward being able to use Parser ↵Luke Kanies2007-09-031-3/+2
| | | | resources to evaluate classes and nodes, not just definitions. This will hopefully simplify some of the parsing work, and it will enable the use of a Configuration object that more completely models a configuration.
* Deleting old documentation that somehow made it back into the tree in the ↵Luke Kanies2007-09-011-1/+1
| | | | switch to git, and refactoring the evaluate_classes method on the compile object so I can use resources as intermediaries, thus making classes do late-binding evaluation.
* And we have multiple environment support in the parser. The only remaining ↵Luke Kanies2007-08-251-4/+4
| | | | piece to make this complete is to add multiple environment support to the fileserver. I also renamed Configuration.rb to Compile.rb (that is, I fixed all the classes that used to know it as a configuration).
* All language tests now pass. I expect there are other failures elsewhere, ↵Luke Kanies2007-08-201-15/+18
| | | | but I want to commit this before delving into them. My method for fixing the tests was to do as little as possible, keeping the tests as bad or as good as they were before I started. Mostly this was about changing references to the interpreter into references to the parser (since that is where the new* methods are now for ast containers) and then dealing with the new config object and its relationship to scopes.
* Removing test that ended up being redundantluke2007-07-311-16/+0
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2730 980ebf18-57e1-0310-9a29-db15c13687c0
* Adding the ability to specify relationships to classes, using Class[name] ↵luke2007-07-191-0/+17
| | | | | | resource references. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2715 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #620 - class names and node names now throw an error when they conflictluke2007-07-041-3/+3
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2646 980ebf18-57e1-0310-9a29-db15c13687c0
* Merging the webserver_portability branch from version 2182 to version 2258.luke2007-03-061-1/+1
| | | | git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2259 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #517 and more. Classes now support more than one namespace in their ↵luke2007-02-271-2/+17
| | | | | | search path, parent classes automatically have their namespaces added to subclass namespaces, and (huzzah) there is a "search" function that can be used to add new namespaces into their search path. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2226 980ebf18-57e1-0310-9a29-db15c13687c0
* Fixing #472. Apparently this has been broken since I did the parser ↵luke2007-02-221-0/+147
redesign. I had to fix the scope trees so that subclass scopes are subscopes of the parent scopes, which used to be the case but was far more complicated. git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2220 980ebf18-57e1-0310-9a29-db15c13687c0