summaryrefslogtreecommitdiff
path: root/spec/unit
diff options
context:
space:
mode:
authorSteven Murawski <steven.murawski@gmail.com>2016-02-03 16:09:24 -0600
committerSteven Murawski <steven.murawski@gmail.com>2016-02-03 16:09:24 -0600
commit22d700e4a1a3c44d6d794fd5c4c1f8932a74cf17 (patch)
tree0099b47838b3425361f41076489917bab304136b /spec/unit
parent6ebcdd04706152594fc34db06c22dadafc1e31ee (diff)
parent5291fd70df7b9360b186ff104115f080e949f5e5 (diff)
downloadchef-22d700e4a1a3c44d6d794fd5c4c1f8932a74cf17.tar.gz
Merge branch 'smurawski/dsc_resource_converge_logging'
Diffstat (limited to 'spec/unit')
-rw-r--r--spec/unit/mixin/powershell_type_coercions_spec.rb29
-rw-r--r--spec/unit/provider/dsc_resource_spec.rb2
2 files changed, 22 insertions, 9 deletions
diff --git a/spec/unit/mixin/powershell_type_coercions_spec.rb b/spec/unit/mixin/powershell_type_coercions_spec.rb
index 846381eb53..f7b4fcd723 100644
--- a/spec/unit/mixin/powershell_type_coercions_spec.rb
+++ b/spec/unit/mixin/powershell_type_coercions_spec.rb
@@ -28,42 +28,53 @@ describe Chef::Mixin::PowershellTypeCoercions do
let (:test_class) { Chef::PSTypeTester.new }
describe '#translate_type' do
- it "should single quote a string" do
+ it "single quotes a string" do
expect(test_class.translate_type("foo")).to eq("'foo'")
end
["'", '"', '#', "`"].each do |c|
- it "should base64 encode a string that contains #{c}" do
+ it "base64 encodes a string that contains #{c}" do
expect(test_class.translate_type("#{c}")).to match(Base64.strict_encode64(c))
end
end
- it "should not quote an integer" do
+ it "does not quote an integer" do
expect(test_class.translate_type(123)).to eq("123")
end
- it "should not quote a floating point number" do
+ it "does not quote a floating point number" do
expect(test_class.translate_type(123.4)).to eq("123.4")
end
- it "should return $false when an instance of FalseClass is provided" do
+ it "translates $false when an instance of FalseClass is provided" do
expect(test_class.translate_type(false)).to eq("$false")
end
- it "should return $true when an instance of TrueClass is provided" do
+ it "translates $true when an instance of TrueClass is provided" do
expect(test_class.translate_type(true)).to eq("$true")
end
- it "should translate all members of a hash and wrap them in @{} separated by ;" do
+ it "translates all members of a hash and wrap them in @{} separated by ;" do
expect(test_class.translate_type({"a" => 1, "b" => 1.2, "c" => false, "d" => true
})).to eq("@{a=1;b=1.2;c=$false;d=$true}")
end
- it "should translat all members of an array and them by a ," do
+ it "translates all members of an array and them by a ," do
expect(test_class.translate_type([true, false])).to eq("@($true,$false)")
end
+
+ it "translates a Chef::Node::ImmutableMash like a hash" do
+ test_mash = Chef::Node::ImmutableMash.new({"a" => 1, "b" => 1.2,
+ "c" => false, "d" => true})
+ expect(test_class.translate_type(test_mash)).to eq("@{a=1;b=1.2;c=$false;d=$true}")
+ end
+
+ it "translates a Chef::Node::ImmutableArray like an array" do
+ test_array = Chef::Node::ImmutableArray.new([true, false])
+ expect(test_class.translate_type(test_array)).to eq("@($true,$false)")
+ end
- it "should fall back :to_psobject if we have not defined at explicit rule" do
+ it "falls back :to_psobject if we have not defined at explicit rule" do
ps_obj = double("PSObject")
expect(ps_obj).to receive(:to_psobject).and_return("$true")
expect(test_class.translate_type(ps_obj)).to eq("($true)")
diff --git a/spec/unit/provider/dsc_resource_spec.rb b/spec/unit/provider/dsc_resource_spec.rb
index e47da8a165..6a5063ac60 100644
--- a/spec/unit/provider/dsc_resource_spec.rb
+++ b/spec/unit/provider/dsc_resource_spec.rb
@@ -98,6 +98,7 @@ describe Chef::Provider::DscResource do
expect(provider).to receive(:test_resource).and_return(false)
expect(provider).to receive(:invoke_resource).
and_return(double(:stdout => "", :return_value =>nil))
+ expect(provider).to receive(:add_dsc_verbose_log)
expect(provider).to receive(:return_dsc_resource_result).and_return(true)
expect(provider).to receive(:create_reboot_resource)
provider.run_action(:run)
@@ -108,6 +109,7 @@ describe Chef::Provider::DscResource do
expect(provider).to receive(:test_resource).and_return(false)
expect(provider).to receive(:invoke_resource).
and_return(double(:stdout => "", :return_value =>nil))
+ expect(provider).to receive(:add_dsc_verbose_log)
expect(provider).to receive(:return_dsc_resource_result).and_return(false)
expect(provider).to_not receive(:create_reboot_resource)
provider.run_action(:run)