summaryrefslogtreecommitdiff
path: root/spec/unit/provider/package
diff options
context:
space:
mode:
authorIrving Popovetsky <irving@getchef.com>2015-09-28 13:33:36 -0700
committerIrving Popovetsky <irving@getchef.com>2015-09-29 10:00:54 -0700
commitad6c3e81e504ef8064d591201c09992a8f3f98d0 (patch)
tree2184466ee86aa079e4af46828a3fadee41aeb02f /spec/unit/provider/package
parent8f65f75b2ae48ed33cfce1853edcdcc1a949b9c3 (diff)
downloadchef-ad6c3e81e504ef8064d591201c09992a8f3f98d0.tar.gz
Use much simpler regex for determining the rpm version
Diffstat (limited to 'spec/unit/provider/package')
-rw-r--r--spec/unit/provider/package/rpm_spec.rb19
1 files changed, 18 insertions, 1 deletions
diff --git a/spec/unit/provider/package/rpm_spec.rb b/spec/unit/provider/package/rpm_spec.rb
index e0e45d0b4f..ad9d694e34 100644
--- a/spec/unit/provider/package/rpm_spec.rb
+++ b/spec/unit/provider/package/rpm_spec.rb
@@ -256,6 +256,24 @@ describe Chef::Provider::Package::Rpm do
end
end
+ context "when the package name contains a plus symbol (chef#3671)" do
+
+ let(:package_name) { "chef-server-core" }
+
+ let(:package_source) { "/tmp/chef-server-core-12.2.0+20150713220422-1.el6.x86_64.rpm" }
+
+ let(:rpm_qp_stdout) { "chef-server-core 12.2.0+20150713220422-1.el6" }
+ let(:rpm_q_stdout) { "chef-server-core 12.2.0+20150713220422-1.el6" }
+
+ let(:rpm_qp_exitstatus) { 0 }
+ let(:rpm_q_exitstatus) { 0 }
+
+ it "should correctly determine the candidate version and installed version" do
+ expect(provider.current_resource.package_name).to eq("chef-server-core")
+ expect(provider.new_resource.version).to eq("12.2.0+20150713220422-1.el6")
+ end
+ end
+
end
context "when the source is given as an URI" do
@@ -413,4 +431,3 @@ describe Chef::Provider::Package::Rpm do
end
-