From 33d6cebdc92e0d5e0c8186480947b9672ae541ed Mon Sep 17 00:00:00 2001 From: danielsdeleo Date: Thu, 1 Oct 2015 10:58:00 -0700 Subject: Un-remove ExpandNodeObject#load_node, deprecate it Some third-party tools are using this, we need it to work. --- .../unit/policy_builder/expand_node_object_spec.rb | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'spec/unit/policy_builder') diff --git a/spec/unit/policy_builder/expand_node_object_spec.rb b/spec/unit/policy_builder/expand_node_object_spec.rb index 815926ffb7..306d677108 100644 --- a/spec/unit/policy_builder/expand_node_object_spec.rb +++ b/spec/unit/policy_builder/expand_node_object_spec.rb @@ -34,6 +34,14 @@ describe Chef::PolicyBuilder::ExpandNodeObject do expect(policy_builder).to respond_to(:node) end + it "implements a load_node method for backwards compatibility until Chef 13" do + expect(policy_builder).to respond_to(:load_node) + end + + it "has removed the deprecated #load_node method", :chef_gte_13_only do + expect(policy_builder).to_not respond_to(:load_node) + end + it "implements a finish_load_node method" do expect(policy_builder).to respond_to(:finish_load_node) end @@ -98,6 +106,27 @@ describe Chef::PolicyBuilder::ExpandNodeObject do end + context "deprecated #load_node method" do + + let(:node) do + node = Chef::Node.new + node.name(node_name) + node.run_list(["recipe[a::default]", "recipe[b::server]"]) + node + end + + before do + Chef::Config[:treat_deprecation_warnings_as_errors] = false + expect(Chef::Node).to receive(:find_or_create).with(node_name).and_return(node) + policy_builder.load_node + end + + it "loads the node" do + expect(policy_builder.node).to eq(node) + end + + end + context "once the node has been loaded" do let(:node) do node = Chef::Node.new -- cgit v1.2.1