Sha256: ed7aa92cafb53dbb5e1b4bd855c7a2ddd86c9b4a32eee4b821ec7c310a8ff942

Contents?: true

Size: 1.43 KB

Versions: 6

Compression:

Stored size: 1.43 KB

Contents

require 'spec_helper'

describe "Exchange::Cachify" do
  
  describe "cachify" do
    subject { "bla" }
    it "should marshal dump" do
      subject.cachify.should == Marshal.dump(subject)
    end
  end
  
  describe "decachify" do
    context "with a string" do
      subject { "blu" }
      it "should work" do
        subject.cachify.decachify.should == subject
      end
    end
    context "with a hash" do
      subject { {:bla => "blu", "bli" => :blo, nil => [5,6]} }
      it "should work" do
        subject.cachify.decachify.should == subject
      end
    end
    context "with a symbol" do
      subject { :blu }
      it "should work" do
        subject.cachify.decachify.should == subject
      end
    end
    context "with an array" do
      subject { [2, 2.3, "blu", :bli, BigDecimal.new("3.345345")] }
      it "should work" do
        subject.cachify.decachify.should == subject
      end
    end
    context "with numeric" do
      context "big decimal" do
        subject { BigDecimal.new("33.3333333", 3) }
        it "should work" do
          subject.cachify.decachify.should == subject
        end
      end
      context "integer" do
        subject { 33 }
        it "should work" do
          subject.cachify.decachify.should == subject
        end
      end
      context "float" do
        subject { 33.33333333 }
        it "should work" do
          subject.cachify.decachify.should == subject
        end
      end
    end
  end
  
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
exchange-0.12.0 spec/exchange/core_extensions/string/cachify_spec.rb
exchange-0.11.0 spec/exchange/core_extensions/string/cachify_spec.rb
exchange-0.10.2 spec/exchange/core_extensions/string/cachify_spec.rb
exchange-0.10.1 spec/exchange/core_extensions/string/cachify_spec.rb
exchange-0.10.0 spec/exchange/core_extensions/string/cachify_spec.rb
exchange-0.9.0 spec/exchange/core_extensions/string/cachify_spec.rb