deltacloud-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From lut...@apache.org
Subject [8/9] git commit: CIMI Model: do not trip over Fixnums during validation
Date Mon, 25 Feb 2013 19:23:01 GMT
CIMI Model: do not trip over Fixnums during validation

There's no Fixnum#empty?; convert everything to a String before checking
for emptiness.


Project: http://git-wip-us.apache.org/repos/asf/deltacloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/deltacloud/commit/a85f8b3b
Tree: http://git-wip-us.apache.org/repos/asf/deltacloud/tree/a85f8b3b
Diff: http://git-wip-us.apache.org/repos/asf/deltacloud/diff/a85f8b3b

Branch: refs/heads/master
Commit: a85f8b3bcc9aca06151109acf4afa2bef708a2ab
Parents: 3287226
Author: David Lutterkort <lutter@redhat.com>
Authored: Fri Feb 22 13:58:08 2013 -0800
Committer: David Lutterkort <lutter@redhat.com>
Committed: Mon Feb 25 11:22:37 2013 -0800

----------------------------------------------------------------------
 server/lib/cimi/models/schema.rb         |    2 +-
 server/tests/cimi/model/resource_spec.rb |   40 +++++++++++++++++++++++++
 2 files changed, 41 insertions(+), 1 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/deltacloud/blob/a85f8b3b/server/lib/cimi/models/schema.rb
----------------------------------------------------------------------
diff --git a/server/lib/cimi/models/schema.rb b/server/lib/cimi/models/schema.rb
index 3f8eb0f..53868a7 100644
--- a/server/lib/cimi/models/schema.rb
+++ b/server/lib/cimi/models/schema.rb
@@ -58,7 +58,7 @@ class CIMI::Model::Schema
     end
 
     def valid?(value)
-      !value.nil? and !value.empty?
+      !value.nil? and !value.to_s.empty?
     end
   end
 

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/a85f8b3b/server/tests/cimi/model/resource_spec.rb
----------------------------------------------------------------------
diff --git a/server/tests/cimi/model/resource_spec.rb b/server/tests/cimi/model/resource_spec.rb
new file mode 100644
index 0000000..e59bfab
--- /dev/null
+++ b/server/tests/cimi/model/resource_spec.rb
@@ -0,0 +1,40 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.  The
+# ASF licenses this file to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the
+# License.  You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+require 'rubygems'
+require 'require_relative' if RUBY_VERSION < '1.9'
+
+require_relative '../spec_helper.rb' if require 'minitest/autorun'
+
+describe "Resource" do
+
+  class ReqResource < CIMI::Model::Resource
+    scalar :req, :required => true
+  end
+
+  describe "required attributes" do
+    it "should require a value" do
+      obj = ReqResource.from_json({}.to_json)
+      assert_raises CIMI::Model::ValidationError do
+        obj.validate!(:json)
+      end
+    end
+
+    it "should validate numbers" do
+      obj = ReqResource.from_json({"req" => 42}.to_json)
+      obj.validate!(:json).must_be_nil
+    end
+  end
+end


Mime
View raw message