summaryrefslogtreecommitdiff
path: root/spec/unit/cookbook/metadata_spec.rb
diff options
context:
space:
mode:
authorXabier de Zuazo <xabier@onddo.com>2014-05-25 15:17:06 +0200
committerXabier de Zuazo <xabier@onddo.com>2014-05-25 15:17:06 +0200
commit8bb2677db528ad0a74faa439decf4321260d5b53 (patch)
treeedee593d81ae73be9d7c706070b0bdf087f9a473 /spec/unit/cookbook/metadata_spec.rb
parent5b4498135d7b2a2256f3aeefb587c88b4abe45d3 (diff)
downloadchef-8bb2677db528ad0a74faa439decf4321260d5b53.tar.gz
[CHEF-4298] Tests: reverted some modifications related with 3 part versions, added some #normalize_version_constraint tests
Diffstat (limited to 'spec/unit/cookbook/metadata_spec.rb')
-rw-r--r--spec/unit/cookbook/metadata_spec.rb44
1 files changed, 33 insertions, 11 deletions
diff --git a/spec/unit/cookbook/metadata_spec.rb b/spec/unit/cookbook/metadata_spec.rb
index efce53ed1b..8959f99a50 100644
--- a/spec/unit/cookbook/metadata_spec.rb
+++ b/spec/unit/cookbook/metadata_spec.rb
@@ -140,7 +140,7 @@ describe Chef::Cookbook::Metadata do
describe "adding a supported platform" do
it "should support adding a supported platform with a single expression" do
@meta.supports("ubuntu", ">= 8.04")
- @meta.platforms["ubuntu"].should == '>= 8.4.0'
+ @meta.platforms["ubuntu"].should == '>= 8.04'
end
end
@@ -177,25 +177,47 @@ describe Chef::Cookbook::Metadata do
end
end
- describe "describing dependencies (includes version transformation)" do
+ describe "describing dependencies" do
+
dep_types = {
- :depends => [ :dependencies, "foo::bar", "> 0.2", "> 0.2.0" ],
- :recommends => [ :recommendations, "foo::bar", ">= 0.2", ">= 0.2.0" ],
- :suggests => [ :suggestions, "foo::bar", "> 0.2", "> 0.2.0" ],
- :conflicts => [ :conflicting, "foo::bar", "~> 0.2", "~> 0.2.0" ],
- :provides => [ :providing, "foo::bar", "<= 0.2", "<= 0.2.0" ],
- :replaces => [ :replacing, "foo::bar", "= 0.2.1", "= 0.2.1" ],
+ :depends => [ :dependencies, "foo::bar", "> 0.2" ],
+ :recommends => [ :recommendations, "foo::bar", ">= 0.2" ],
+ :suggests => [ :suggestions, "foo::bar", "> 0.2" ],
+ :conflicts => [ :conflicting, "foo::bar", "~> 0.2" ],
+ :provides => [ :providing, "foo::bar", "<= 0.2" ],
+ :replaces => [ :replacing, "foo::bar", "= 0.2.1" ],
}
dep_types.sort { |a,b| a.to_s <=> b.to_s }.each do |dep, dep_args|
check_with = dep_args.shift
- transformed_version = dep_args.pop
describe dep do
it "should be set-able via #{dep}" do
- @meta.send(dep, *dep_args).should == transformed_version
+ @meta.send(dep, *dep_args).should == dep_args[1]
end
it "should be get-able via #{check_with}" do
@meta.send(dep, *dep_args)
- @meta.send(check_with).should == { dep_args[0] => transformed_version }
+ @meta.send(check_with).should == { dep_args[0] => dep_args[1] }
+ end
+ end
+ end
+
+ dep_types = {
+ :depends => [ :dependencies, "foo::bar", ">0.2", "> 0.2" ],
+ :recommends => [ :recommendations, "foo::bar", ">=0.2", ">= 0.2" ],
+ :suggests => [ :suggestions, "foo::bar", ">0.2", "> 0.2" ],
+ :conflicts => [ :conflicting, "foo::bar", "~>0.2", "~> 0.2" ],
+ :provides => [ :providing, "foo::bar", "<=0.2", "<= 0.2" ],
+ :replaces => [ :replacing, "foo::bar", "=0.2.1", "= 0.2.1" ],
+ }
+ dep_types.sort { |a,b| a.to_s <=> b.to_s }.each do |dep, dep_args|
+ check_with = dep_args.shift
+ normalized_version = dep_args.pop
+ describe dep do
+ it "should be set-able and normalized via #{dep}" do
+ @meta.send(dep, *dep_args).should == normalized_version
+ end
+ it "should be get-able and normalized via #{check_with}" do
+ @meta.send(dep, *dep_args)
+ @meta.send(check_with).should == { dep_args[0] => normalized_version }
end
end
end