summaryrefslogtreecommitdiffstats
path: root/spec/integration
diff options
context:
space:
mode:
authorLuke Kanies <luke@reductivelabs.com>2010-01-07 13:08:50 -0800
committertest branch <puppet-dev@googlegroups.com>2010-02-17 06:50:53 -0800
commit67ef78d9f231661d0fdd6260d470cf0d06f1bac2 (patch)
tree0fd49958832f3da98476c36fb9d8e4160f95873e /spec/integration
parentb82b4ef04282ca0006931562f60459a1591b6268 (diff)
downloadpuppet-67ef78d9f231661d0fdd6260d470cf0d06f1bac2.tar.gz
puppet-67ef78d9f231661d0fdd6260d470cf0d06f1bac2.tar.xz
puppet-67ef78d9f231661d0fdd6260d470cf0d06f1bac2.zip
Removing Interpreter class
It's no longer necessary, given the new ResourceTypeCollection class. Signed-off-by: Luke Kanies <luke@reductivelabs.com>
Diffstat (limited to 'spec/integration')
-rwxr-xr-xspec/integration/parser/functions/include.rb25
-rwxr-xr-xspec/integration/parser/functions/require.rb50
2 files changed, 29 insertions, 46 deletions
diff --git a/spec/integration/parser/functions/include.rb b/spec/integration/parser/functions/include.rb
new file mode 100755
index 000000000..64346bffb
--- /dev/null
+++ b/spec/integration/parser/functions/include.rb
@@ -0,0 +1,25 @@
+#!/usr/bin/env ruby
+
+require File.dirname(__FILE__) + '/../../../spec_helper'
+
+describe "The include function" do
+ before :each do
+ @node = Puppet::Node.new("mynode")
+ @compiler = Puppet::Parser::Compiler.new(@node)
+ @compiler.send(:evaluate_main)
+ @scope = @compiler.topscope
+ # preload our functions
+ Puppet::Parser::Functions.function(:include)
+ Puppet::Parser::Functions.function(:require)
+ end
+
+ it "should add a containment relationship between the 'included' class and our class" do
+ @compiler.known_resource_types.add Puppet::Parser::ResourceType.new(:hostclass, "includedclass")
+
+ @scope.function_include("includedclass")
+
+ klass_resource = @compiler.findresource(:class,"includedclass")
+ klass_resource.should be_instance_of(Puppet::Parser::Resource)
+ @compiler.catalog.should be_edge(@scope.resource, klass_resource)
+ end
+end
diff --git a/spec/integration/parser/functions/require.rb b/spec/integration/parser/functions/require.rb
index 6f169ade1..5f95ec520 100755
--- a/spec/integration/parser/functions/require.rb
+++ b/spec/integration/parser/functions/require.rb
@@ -2,12 +2,10 @@
require File.dirname(__FILE__) + '/../../../spec_helper'
-describe "the require function" do
-
+describe "The require function" do
before :each do
- @parser = Puppet::Parser::Parser.new :Code => ""
@node = Puppet::Node.new("mynode")
- @compiler = Puppet::Parser::Compiler.new(@node, @parser)
+ @compiler = Puppet::Parser::Compiler.new(@node)
@compiler.send(:evaluate_main)
@compiler.catalog.client_version = "0.25"
@@ -17,8 +15,8 @@ describe "the require function" do
Puppet::Parser::Functions.function(:require)
end
- it "should add a relationship between the 'required' class and our class" do
- @parser.newclass("requiredclass")
+ it "should add a dependency between the 'required' class and our class" do
+ @compiler.known_resource_types.add Puppet::Parser::ResourceType.new(:hostclass, "requiredclass")
@scope.function_require("requiredclass")
@scope.resource["require"].should_not be_nil
@@ -44,43 +42,3 @@ describe "the require function" do
end
end
-
-describe "the include function" do
- require 'puppet_spec/files'
- include PuppetSpec::Files
-
- before :each do
- @real_dir = Dir.getwd
- @temp_dir = tmpfile('include_function_integration_test')
- Dir.mkdir @temp_dir
- Dir.chdir @temp_dir
- @parser = Puppet::Parser::Parser.new :Code => ""
- @node = Puppet::Node.new("mynode")
- @compiler = Puppet::Parser::Compiler.new(@node, @parser)
- @compiler.send(:evaluate_main)
- @scope = @compiler.topscope
- # preload our functions
- Puppet::Parser::Functions.function(:include)
- Puppet::Parser::Functions.function(:require)
- end
-
- after :each do
- Dir.chdir @real_dir
- Dir.rmdir @temp_dir
- end
-
- def with_file(filename,contents)
- path = File.join(@temp_dir,filename)
- File.open(path, "w") { |f|f.puts contents }
- yield
- File.delete(path)
- end
-
- it "should add a relationship between the 'included' class and our class" do
- with_file('includedclass',"class includedclass {}") {
- @scope.function_include("includedclass")
- }
- @compiler.catalog.edge?(@scope.resource,@compiler.findresource(:class,"includedclass")).should be_true
- end
-
-end