diff options
| author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-03-09 18:45:51 +0000 |
|---|---|---|
| committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-03-09 18:45:51 +0000 |
| commit | 2dbd7e19de0caa683f7e0b4da5654eb15bc419da (patch) | |
| tree | 298ac3b9f49804e32fd135842bae38de3b5d4b46 /test/language | |
| parent | 7756f9a57fa83e811888298edd339978bb6a9c83 (diff) | |
| download | puppet-2dbd7e19de0caa683f7e0b4da5654eb15bc419da.tar.gz puppet-2dbd7e19de0caa683f7e0b4da5654eb15bc419da.tar.xz puppet-2dbd7e19de0caa683f7e0b4da5654eb15bc419da.zip | |
Fixing #96. Defaults are now set when the object is passed out by the scope, rather than when the object is created. This is nice because it also moves awareness of the scope internals out of the AST object and back into the scope.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@996 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'test/language')
| -rwxr-xr-x | test/language/scope.rb | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/test/language/scope.rb b/test/language/scope.rb index a18b75bff..9c5302988 100755 --- a/test/language/scope.rb +++ b/test/language/scope.rb @@ -513,4 +513,35 @@ class TestScope < Test::Unit::TestCase # trans = scope.evaluate(:ast => top) #} end + + def test_defaultswithmultiplestatements + path = tempfile() + + stats = [] + stats << defaultobj("file", "group" => "root") + stats << fileobj(path, "owner" => "root") + stats << fileobj(path, "mode" => "755") + + top = AST::ASTArray.new( + :file => __FILE__, + :line => __LINE__, + :children => stats + ) + scope = Puppet::Parser::Scope.new() + assert_nothing_raised { + scope.evaluate(:ast => top) + } + + trans = nil + assert_nothing_raised { + trans = scope.to_trans + } + + obj = trans.find do |obj| obj.is_a? Puppet::TransObject end + + assert(obj, "Could not retrieve file obj") + assert_equal("root", obj["group"], "Default did not take") + assert_equal("root", obj["owner"], "Owner did not take") + assert_equal("755", obj["mode"], "Mode did not take") + end end |
