diff options
Diffstat (limited to 'spec/unit/provider/link_spec.rb')
-rw-r--r-- | spec/unit/provider/link_spec.rb | 120 |
1 files changed, 60 insertions, 60 deletions
diff --git a/spec/unit/provider/link_spec.rb b/spec/unit/provider/link_spec.rb index 2f0a5f2020..3ae8a71cff 100644 --- a/spec/unit/provider/link_spec.rb +++ b/spec/unit/provider/link_spec.rb @@ -45,36 +45,36 @@ describe Chef::Resource::Link, :not_supported_on_win2k3 do describe "when the target is a symlink" do before(:each) do lstat = double("stats", :ino => 5) - lstat.stub(:uid).and_return(501) - lstat.stub(:gid).and_return(501) - lstat.stub(:mode).and_return(0777) - File.stub(:lstat).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(lstat) - provider.file_class.stub(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) - provider.file_class.stub(:readlink).with("#{CHEF_SPEC_DATA}/fofile-link").and_return("#{CHEF_SPEC_DATA}/fofile") + allow(lstat).to receive(:uid).and_return(501) + allow(lstat).to receive(:gid).and_return(501) + allow(lstat).to receive(:mode).and_return(0777) + allow(File).to receive(:lstat).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(lstat) + allow(provider.file_class).to receive(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) + allow(provider.file_class).to receive(:readlink).with("#{CHEF_SPEC_DATA}/fofile-link").and_return("#{CHEF_SPEC_DATA}/fofile") end describe "to a file that exists" do before do - File.stub(:exist?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) + allow(File).to receive(:exist?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) new_resource.owner 501 # only loaded in current_resource if present in new new_resource.group 501 provider.load_current_resource end it "should set the symlink target" do - provider.current_resource.target_file.should == "#{CHEF_SPEC_DATA}/fofile-link" + expect(provider.current_resource.target_file).to eq("#{CHEF_SPEC_DATA}/fofile-link") end it "should set the link type" do - provider.current_resource.link_type.should == :symbolic + expect(provider.current_resource.link_type).to eq(:symbolic) end it "should update the source of the existing link with the links target" do - paths_eql?(provider.current_resource.to, "#{CHEF_SPEC_DATA}/fofile").should be_true + expect(paths_eql?(provider.current_resource.to, "#{CHEF_SPEC_DATA}/fofile")).to be_true end it "should set the owner" do - provider.current_resource.owner.should == 501 + expect(provider.current_resource.owner).to eq(501) end it "should set the group" do - provider.current_resource.group.should == 501 + expect(provider.current_resource.group).to eq(501) end # We test create in unit tests because there is no other way to ensure @@ -87,7 +87,7 @@ describe Chef::Resource::Link, :not_supported_on_win2k3 do result end it 'create does no work' do - provider.access_controls.should_not_receive(:set_all) + expect(provider.access_controls).not_to receive(:set_all) provider.run_action(:create) end end @@ -95,139 +95,139 @@ describe Chef::Resource::Link, :not_supported_on_win2k3 do describe "to a file that doesn't exist" do before do - File.stub(:exist?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) - provider.file_class.stub(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) - provider.file_class.stub(:readlink).with("#{CHEF_SPEC_DATA}/fofile-link").and_return("#{CHEF_SPEC_DATA}/fofile") + allow(File).to receive(:exist?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) + allow(provider.file_class).to receive(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) + allow(provider.file_class).to receive(:readlink).with("#{CHEF_SPEC_DATA}/fofile-link").and_return("#{CHEF_SPEC_DATA}/fofile") new_resource.owner "501" # only loaded in current_resource if present in new new_resource.group "501" provider.load_current_resource end it "should set the symlink target" do - provider.current_resource.target_file.should == "#{CHEF_SPEC_DATA}/fofile-link" + expect(provider.current_resource.target_file).to eq("#{CHEF_SPEC_DATA}/fofile-link") end it "should set the link type" do - provider.current_resource.link_type.should == :symbolic + expect(provider.current_resource.link_type).to eq(:symbolic) end it "should update the source of the existing link to the link's target" do - paths_eql?(provider.current_resource.to, "#{CHEF_SPEC_DATA}/fofile").should be_true + expect(paths_eql?(provider.current_resource.to, "#{CHEF_SPEC_DATA}/fofile")).to be_true end it "should not set the owner" do - provider.current_resource.owner.should be_nil + expect(provider.current_resource.owner).to be_nil end it "should not set the group" do - provider.current_resource.group.should be_nil + expect(provider.current_resource.group).to be_nil end end end describe "when the target doesn't exist" do before do - File.stub(:exists?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) - provider.file_class.stub(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) + allow(File).to receive(:exists?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) + allow(provider.file_class).to receive(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) provider.load_current_resource end it "should set the symlink target" do - provider.current_resource.target_file.should == "#{CHEF_SPEC_DATA}/fofile-link" + expect(provider.current_resource.target_file).to eq("#{CHEF_SPEC_DATA}/fofile-link") end it "should update the source of the existing link to nil" do - provider.current_resource.to.should be_nil + expect(provider.current_resource.to).to be_nil end it "should not set the owner" do - provider.current_resource.owner.should == nil + expect(provider.current_resource.owner).to eq(nil) end it "should not set the group" do - provider.current_resource.group.should == nil + expect(provider.current_resource.group).to eq(nil) end end describe "when the target is a regular old file" do before do stat = double("stats", :ino => 5) - stat.stub(:uid).and_return(501) - stat.stub(:gid).and_return(501) - stat.stub(:mode).and_return(0755) - provider.file_class.stub(:stat).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(stat) + allow(stat).to receive(:uid).and_return(501) + allow(stat).to receive(:gid).and_return(501) + allow(stat).to receive(:mode).and_return(0755) + allow(provider.file_class).to receive(:stat).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(stat) - File.stub(:exists?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) - provider.file_class.stub(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) + allow(File).to receive(:exists?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(true) + allow(provider.file_class).to receive(:symlink?).with("#{CHEF_SPEC_DATA}/fofile-link").and_return(false) end describe "and the source does not exist" do before do - File.stub(:exists?).with("#{CHEF_SPEC_DATA}/fofile").and_return(false) + allow(File).to receive(:exists?).with("#{CHEF_SPEC_DATA}/fofile").and_return(false) provider.load_current_resource end it "should set the symlink target" do - provider.current_resource.target_file.should == "#{CHEF_SPEC_DATA}/fofile-link" + expect(provider.current_resource.target_file).to eq("#{CHEF_SPEC_DATA}/fofile-link") end it "should update the current source of the existing link with an empty string" do - provider.current_resource.to.should == '' + expect(provider.current_resource.to).to eq('') end it "should not set the owner" do - provider.current_resource.owner.should == nil + expect(provider.current_resource.owner).to eq(nil) end it "should not set the group" do - provider.current_resource.group.should == nil + expect(provider.current_resource.group).to eq(nil) end end describe "and the source exists" do before do stat = double("stats", :ino => 6) - stat.stub(:uid).and_return(502) - stat.stub(:gid).and_return(502) - stat.stub(:mode).and_return(0644) + allow(stat).to receive(:uid).and_return(502) + allow(stat).to receive(:gid).and_return(502) + allow(stat).to receive(:mode).and_return(0644) - provider.file_class.stub(:stat).with("#{CHEF_SPEC_DATA}/fofile").and_return(stat) + allow(provider.file_class).to receive(:stat).with("#{CHEF_SPEC_DATA}/fofile").and_return(stat) - File.stub(:exists?).with("#{CHEF_SPEC_DATA}/fofile").and_return(true) + allow(File).to receive(:exists?).with("#{CHEF_SPEC_DATA}/fofile").and_return(true) provider.load_current_resource end it "should set the symlink target" do - provider.current_resource.target_file.should == "#{CHEF_SPEC_DATA}/fofile-link" + expect(provider.current_resource.target_file).to eq("#{CHEF_SPEC_DATA}/fofile-link") end it "should update the current source of the existing link with an empty string" do - provider.current_resource.to.should == '' + expect(provider.current_resource.to).to eq('') end it "should not set the owner" do - provider.current_resource.owner.should == nil + expect(provider.current_resource.owner).to eq(nil) end it "should not set the group" do - provider.current_resource.group.should == nil + expect(provider.current_resource.group).to eq(nil) end end describe "and is hardlinked to the source" do before do stat = double("stats", :ino => 5) - stat.stub(:uid).and_return(502) - stat.stub(:gid).and_return(502) - stat.stub(:mode).and_return(0644) + allow(stat).to receive(:uid).and_return(502) + allow(stat).to receive(:gid).and_return(502) + allow(stat).to receive(:mode).and_return(0644) - provider.file_class.stub(:stat).with("#{CHEF_SPEC_DATA}/fofile").and_return(stat) + allow(provider.file_class).to receive(:stat).with("#{CHEF_SPEC_DATA}/fofile").and_return(stat) - File.stub(:exists?).with("#{CHEF_SPEC_DATA}/fofile").and_return(true) + allow(File).to receive(:exists?).with("#{CHEF_SPEC_DATA}/fofile").and_return(true) provider.load_current_resource end it "should set the symlink target" do - provider.current_resource.target_file.should == "#{CHEF_SPEC_DATA}/fofile-link" + expect(provider.current_resource.target_file).to eq("#{CHEF_SPEC_DATA}/fofile-link") end it "should set the link type" do - provider.current_resource.link_type.should == :hard + expect(provider.current_resource.link_type).to eq(:hard) end it "should update the source of the existing link to the link's target" do - paths_eql?(provider.current_resource.to, "#{CHEF_SPEC_DATA}/fofile").should be_true + expect(paths_eql?(provider.current_resource.to, "#{CHEF_SPEC_DATA}/fofile")).to be_true end it "should not set the owner" do - provider.current_resource.owner.should == nil + expect(provider.current_resource.owner).to eq(nil) end it "should not set the group" do - provider.current_resource.group.should == nil + expect(provider.current_resource.group).to eq(nil) end # We test create in unit tests because there is no other way to ensure @@ -241,9 +241,9 @@ describe Chef::Resource::Link, :not_supported_on_win2k3 do result end it 'create does no work' do - provider.file_class.should_not_receive(:symlink) - provider.file_class.should_not_receive(:link) - provider.access_controls.should_not_receive(:set_all) + expect(provider.file_class).not_to receive(:symlink) + expect(provider.file_class).not_to receive(:link) + expect(provider.access_controls).not_to receive(:set_all) provider.run_action(:create) end end |