#! /usr/bin/env ruby require 'spec_helper' describe Puppet::Parser::AST::Node do describe "when instantiated" do it "should make its names and context available through accessors" do node = Puppet::Parser::AST::Node.new(['foo', 'bar'], :line => 5) node.names.should == ['foo', 'bar'] node.context.should == {:line => 5} end it "should create a node with the proper type, name, context, and module name" do node = Puppet::Parser::AST::Node.new(['foo'], :line => 5) instantiated_nodes = node.instantiate('modname') instantiated_nodes.length.should == 1 instantiated_nodes[0].type.should == :node instantiated_nodes[0].name.should == 'foo' instantiated_nodes[0].line.should == 5 instantiated_nodes[0].module_name.should == 'modname' end it "should handle multiple names" do node = Puppet::Parser::AST::Node.new(['foo', 'bar']) instantiated_nodes = node.instantiate('modname') instantiated_nodes.length.should == 2 instantiated_nodes[0].name.should == 'foo' instantiated_nodes[1].name.should == 'bar' end end end