# # Author:: Daniel DeLeo () # Copyright:: Copyright (c) 2009 Daniel DeLeo # License:: Apache License, Version 2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # require 'spec_helper' describe Chef::Resource::TimestampedDeploy, "initialize" do let(:node) { node = Chef::Node.new node.automatic_attrs[:os] = 'linux' node.automatic_attrs[:platform_family] = 'rhel' node } let(:events) { Chef::EventDispatch::Dispatcher.new } let(:provider_resolver) { Chef::ProviderResolver.new(node) } let(:run_context) { run_context = Chef::RunContext.new(node, {}, events) run_context.provider_resolver = provider_resolver run_context } let(:resource) { Chef::Resource::TimestampedDeploy.new("stuff", run_context) } it "should return a Chef::Resource::TimestampedDeploy" do expect(resource).to be_a_kind_of(Chef::Resource::TimestampedDeploy) end it "should set the resource_name to :timestamped_deploy" do expect(resource.resource_name).to eql(:deploy) end it "should leave the provider nil" do expect(resource.provider).to eql(nil) end it "should resolve to a Chef::Provider::Deploy::Timestamped" do expect(resource.provider_for_action(:install)).to be_a(Chef::Provider::Deploy::Timestamped) end end