Updating histories and ensuring VERSION and date are good for 1.1.2

master v1.1.2
Sam Lown 2011-07-23 17:38:49 +02:00
commit 80e5ed2767
5 changed files with 14 additions and 11 deletions

View File

@ -1 +1 @@
1.1.1 1.1.2

View File

@ -6,7 +6,7 @@ Gem::Specification.new do |s|
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version= s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
s.authors = ["J. Chris Anderson", "Matt Aimonetti", "Marcos Tapajos", "Will Leinweber", "Sam Lown"] s.authors = ["J. Chris Anderson", "Matt Aimonetti", "Marcos Tapajos", "Will Leinweber", "Sam Lown"]
s.date = %q{2011-04-29} s.date = File.mtime('VERSION')
s.description = %q{CouchRest Model provides aditional features to the standard CouchRest Document class such as properties, view designs, associations, callbacks, typecasting and validations.} s.description = %q{CouchRest Model provides aditional features to the standard CouchRest Document class such as properties, view designs, associations, callbacks, typecasting and validations.}
s.email = %q{jchris@apache.org} s.email = %q{jchris@apache.org}
s.extra_rdoc_files = [ s.extra_rdoc_files = [

View File

@ -1,10 +1,11 @@
# CouchRest Model Change History # CouchRest Model Change History
## 1.1.2 - 2011-07-XX ## 1.1.2 - 2011-07-23
* Minor fixes * Minor fixes
* Upgrade to couchrest 1.1.2 * Upgrade to couchrest 1.1.2
* Override as_couch_json to ensure nil values not stored * Override as_couch_json to ensure nil values not stored
* Removing restriction that prohibited objects that cast as an array to be loaded.
## 1.1.1 - 2011-07-04 ## 1.1.1 - 2011-07-04

View File

@ -43,9 +43,8 @@ module CouchRest::Model
end end
end end
# Cast an individual value, not an array # Cast an individual value
def cast_value(parent, value) def cast_value(parent, value)
raise "An array inside an array cannot be casted, use Embeddable module" if value.is_a?(Array)
value = typecast_value(value, self) value = typecast_value(value, self)
associate_casted_value_to_parent(parent, value) associate_casted_value_to_parent(parent, value)
end end

View File

@ -450,15 +450,18 @@ describe "Property Class" do
ary.last.should eql(Date.new(2011, 05, 22)) ary.last.should eql(Date.new(2011, 05, 22))
end end
it "should raise and error if value is array when type is not" do it "should cast an object that provides an array" do
property = CouchRest::Model::Property.new(:test, Date) prop = Class.new do
attr_accessor :ary
def initialize(val); self.ary = val; end
def as_json; ary; end
end
property = CouchRest::Model::Property.new(:test, prop)
parent = mock("FooClass") parent = mock("FooClass")
lambda { cast = property.cast(parent, [1, 2])
cast = property.cast(parent, [Date.new(2010, 6, 1)]) cast.ary.should eql([1, 2])
}.should raise_error
end end
it "should set parent as casted_by object in CastedArray" do it "should set parent as casted_by object in CastedArray" do
property = CouchRest::Model::Property.new(:test, [Object]) property = CouchRest::Model::Property.new(:test, [Object])
parent = mock("FooObject") parent = mock("FooObject")