summaryrefslogtreecommitdiffstats
path: root/spec/unit/rails
diff options
context:
space:
mode:
authorMarkus Roberts <Markus@reality.com>2009-12-21 22:59:23 -0800
committerJames Turnbull <james@lovedthanlost.net>2009-12-23 09:52:02 +1100
commit49530adaaa302c4b4e3b9eefb05e9551503a0ba6 (patch)
tree56cb85214c186e4c802492a97757a7874e857d12 /spec/unit/rails
parent6ab2453d966d1d48e12d8a8cec34b9e460597d04 (diff)
downloadpuppet-49530adaaa302c4b4e3b9eefb05e9551503a0ba6.tar.gz
puppet-49530adaaa302c4b4e3b9eefb05e9551503a0ba6.tar.xz
puppet-49530adaaa302c4b4e3b9eefb05e9551503a0ba6.zip
Fixing #2964 updated resources cannot be collected until they are exported twice
This logic had a bug where it would not insert data if it had just been deleted. Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
Diffstat (limited to 'spec/unit/rails')
-rwxr-xr-xspec/unit/rails/resource.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/spec/unit/rails/resource.rb b/spec/unit/rails/resource.rb
index 9e2ff8cd2..e9162b92e 100755
--- a/spec/unit/rails/resource.rb
+++ b/spec/unit/rails/resource.rb
@@ -84,4 +84,24 @@ describe "Puppet::Rails::Resource" do
@resource.merge_parser_resource(@parser)
end
end
+
+ describe "merge_parameters" do
+ it "should replace values that have changed" do
+ @resource = Puppet::Rails::Resource.new
+ @resource.params_list = [{"name" => "replace", "value" => 1, "id" => 100 }]
+
+ Puppet::Rails::ParamValue.expects(:delete).with([100])
+ param_values = stub "param_values"
+ param_values.expects(:build).with({:value=>nil, :param_name=>nil, :line=>{"replace"=>2}})
+ @resource.stubs(:param_values).returns(param_values)
+
+ Puppet::Rails::ParamName.stubs(:accumulate_by_name)
+
+ merge_resource = stub "merge_resource"
+ merge_resource.expects(:line).returns({ "replace" => 2 })
+ merge_resource.stubs(:each).yields([["replace", 2]])
+
+ @resource.merge_parameters(merge_resource)
+ end
+ end
end