summaryrefslogtreecommitdiff
path: root/spec/unit/property
diff options
context:
space:
mode:
authorJohn Keiser <john@johnkeiser.com>2015-06-03 15:03:18 -0700
committerJohn Keiser <john@johnkeiser.com>2015-06-23 15:23:01 -0700
commit2278a61bc0fafe7fdd208c30b12cc11db9547d04 (patch)
treec3553d800581e515a238cf5b7a161fcae7ff5c33 /spec/unit/property
parent4e34d816167af65b36c7a57ad33dca3b1f39c1e4 (diff)
downloadchef-2278a61bc0fafe7fdd208c30b12cc11db9547d04.tar.gz
Add property Type as an alias to is
Diffstat (limited to 'spec/unit/property')
-rw-r--r--spec/unit/property/state_spec.rb3
-rw-r--r--spec/unit/property/validation_spec.rb118
2 files changed, 82 insertions, 39 deletions
diff --git a/spec/unit/property/state_spec.rb b/spec/unit/property/state_spec.rb
index 5a7d19af11..d5c0893cfd 100644
--- a/spec/unit/property/state_spec.rb
+++ b/spec/unit/property/state_spec.rb
@@ -143,8 +143,7 @@ describe "Chef::Resource#identity and #state" do
# end
# end
- # with_property ":y, String" do
- with_property ":y, kind_of: String" do
+ with_property ":y, String" do
context "With identity_attr :y on the subclass" do
before do
subresource_class.class_eval do
diff --git a/spec/unit/property/validation_spec.rb b/spec/unit/property/validation_spec.rb
index 4aa8a5474e..586d94ee18 100644
--- a/spec/unit/property/validation_spec.rb
+++ b/spec/unit/property/validation_spec.rb
@@ -97,43 +97,43 @@ describe "Chef::Resource.property validation" do
end
# Bare types
- # context "bare types" do
- # validation_test 'String',
- # [ 'hi' ],
- # [ 10, nil ]
- #
- # validation_test ':a',
- # [ :a ],
- # [ :b, nil ]
- #
- # validation_test ':a, is: :b',
- # [ :a, :b ],
- # [ :c, nil ]
- #
- # validation_test ':a, is: [ :b, :c ]',
- # [ :a, :b, :c ],
- # [ :d, nil ]
- #
- # validation_test '[ :a, :b ], is: :c',
- # [ :a, :b, :c ],
- # [ :d, nil ]
- #
- # validation_test '[ :a, :b ], is: [ :c, :d ]',
- # [ :a, :b, :c, :d ],
- # [ :e, nil ]
- #
- # validation_test 'nil',
- # [ nil ],
- # [ :a ]
- #
- # validation_test '[ nil ]',
- # [ nil ],
- # [ :a ]
- #
- # validation_test '[]',
- # [ :a ],
- # []
- # end
+ context "bare types" do
+ validation_test 'String',
+ [ 'hi' ],
+ [ 10, nil ]
+
+ validation_test ':a',
+ [ :a ],
+ [ :b, nil ]
+
+ validation_test ':a, is: :b',
+ [ :a, :b ],
+ [ :c, nil ]
+
+ validation_test ':a, is: [ :b, :c ]',
+ [ :a, :b, :c ],
+ [ :d, nil ]
+
+ validation_test '[ :a, :b ], is: :c',
+ [ :a, :b, :c ],
+ [ :d, nil ]
+
+ validation_test '[ :a, :b ], is: [ :c, :d ]',
+ [ :a, :b, :c, :d ],
+ [ :e, nil ]
+
+ validation_test 'nil',
+ [ nil ],
+ [ :a ]
+
+ validation_test '[ nil ]',
+ [ nil ],
+ [ :a ]
+
+ validation_test '[]',
+ [],
+ [ :a ]
+ end
# is
context "is" do
@@ -190,6 +190,10 @@ describe "Chef::Resource.property validation" do
validation_test 'is: [ String, nil ]',
[ 'a', nil ],
[ :b ]
+
+ validation_test 'is: []',
+ [],
+ [ :a ]
end
# Combination
@@ -225,6 +229,10 @@ describe "Chef::Resource.property validation" do
validation_test 'equal_to: [ nil, "a" ]',
[ 'a', nil ],
[ 'b' ]
+
+ validation_test 'equal_to: []',
+ [],
+ [ :a ]
end
# kind_of
@@ -248,6 +256,14 @@ describe "Chef::Resource.property validation" do
validation_test 'kind_of: [ NilClass, String ]',
[ nil, 'a' ],
[ :a ]
+
+ validation_test 'kind_of: []',
+ [],
+ [ :a ]
+
+ validation_test 'kind_of: nil',
+ [],
+ [ :a ]
end
# regex
@@ -263,6 +279,14 @@ describe "Chef::Resource.property validation" do
validation_test 'regex: [ /z/, /abc/ ]',
[ 'xabcy', 'aza' ],
[ 'gbh', 123, nil ]
+
+ validation_test 'regex: []',
+ [],
+ [ :a ]
+
+ validation_test 'regex: nil',
+ [],
+ [ :a ]
end
# callbacks
@@ -278,6 +302,10 @@ describe "Chef::Resource.property validation" do
validation_test 'callbacks: { "a" => proc { |x| x.nil? } }',
[ nil ],
[ 'a' ]
+
+ validation_test 'callbacks: {}',
+ [ :a ],
+ []
end
# respond_to
@@ -301,6 +329,14 @@ describe "Chef::Resource.property validation" do
validation_test 'respond_to: [ :to_s, :split ]',
[ 'hi' ],
[ 1, nil ]
+
+ validation_test 'respond_to: []',
+ [ :a ],
+ []
+
+ validation_test 'respond_to: nil',
+ [ :a ],
+ []
end
context "cannot_be" do
@@ -327,6 +363,14 @@ describe "Chef::Resource.property validation" do
validation_test 'cannot_be: [ :empty, :nil, :blahblah ]',
[ 1, [1,2], { a: 10 } ],
[ [], nil ]
+
+ validation_test 'cannot_be: []',
+ [ :a ],
+ []
+
+ validation_test 'cannot_be: nil',
+ [ :a ],
+ []
end
context "required" do