Sha256: 31ea845ca68404e4e2dbfa739e7f5e6a55483a69f878a679b19827916dc8788e
Contents?: true
Size: 1.42 KB
Versions: 3
Compression:
Stored size: 1.42 KB
Contents
require 'pathname' require Pathname(__FILE__).dirname.expand_path.parent + 'spec_helper' describe DataMapper::Serialize, '#to_json' do # # ==== ajaxy JSON # before(:all) do DataMapper.auto_migrate! query = DataMapper::Query.new(DataMapper::repository(:default), Cow) @collection = DataMapper::Collection.new(query) do |c| c.load([1, 2, 'Betsy', 'Jersey']) c.load([10, 20, 'Berta', 'Guernsey']) end @harness = Class.new(SerializerTestHarness) do def method_name :to_json end protected def deserialize(result) JSON.parse(result) end end.new end it_should_behave_like "A serialization method" it_should_behave_like 'A serialization method that also serializes core classes' it "handles options given to a collection properly" do deserialized_collection = JSON.parse(@collection.to_json(:only => [:composite])) betsy = deserialized_collection.first berta = deserialized_collection.last betsy["id"].should be_nil betsy["composite"].should == 2 betsy["name"].should be_nil betsy["breed"].should be_nil berta["id"].should be_nil berta["composite"].should == 20 berta["name"].should be_nil berta["breed"].should be_nil end it "supports :include option for one level depth" it "supports :include option for more than one level depth" it "has :repository option to override used repository" end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
dm-serializer-0.9.9 | spec/public/to_json_spec.rb |
dm-serializer-0.9.11 | spec/public/to_json_spec.rb |
dm-serializer-0.9.10 | spec/public/to_json_spec.rb |