Sha256: cddc528b08f216abbcbf2f56317d6fb19655ec62a1e8787a2997174b17f17536
Contents?: true
Size: 1.48 KB
Versions: 1
Compression:
Stored size: 1.48 KB
Contents
require 'spec_helper' class Mummy attr_accessor :attributes def initialize(opts = {}) self.attributes = opts end end class Dummy < Hash; end class Rummy < Hash; end describe JellyBird do describe "#define_scheme" do it "should be able to define scheme for activerecord like objects" do Mummy.define {{ :name => /\w{3,8}/.gen, :number => /\d\d\d\d\d\d/.gen }} mummy = Mummy.gen mummy.should be_kind_of(Mummy) mummy.attributes[:name].should =~ /\w{3,8}/ mummy.attributes[:number].should =~ /\d\d\d\d\d\d/ end it "should be able to define scheme for hashlike objects" do Dummy.define {{ :name => /\w{3,8}/.gen, :number => /\d\d\d\d\d\d/.gen }} Rummy.define {{ :name => /\w{3,8}/.gen, :number => /\d\d\d\d\d\d/.gen }} dummy = Dummy.gen dummy.should be_kind_of(Dummy) dummy[:name].should =~ /\w{3,8}/ dummy[:number].should =~ /\d\d\d\d\d\d/ rummy = Rummy.gen rummy.should be_kind_of(Rummy) rummy[:name].should =~ /\w{3,8}/ rummy[:number].should =~ /\d\d\d\d\d\d/ end end describe "#gen" do it "should be able to generate object" do dummy = Dummy.gen( :name => "test" ) dummy.should be_kind_of(Dummy) dummy[:name].should eql("test") end it "should not generate same name" do 500.times do Dummy.gen[:name].should_not eql(Dummy.gen[:name]) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
jelly_bird-0.0.1 | spec/jelly_bird/jelly_bird_spec.rb |