Sha256: 0478efb75db5184afa6209f87d19a928613aebfc34574fa4a74397c81d6e9af6

Contents?: true

Size: 1.21 KB

Versions: 27

Compression:

Stored size: 1.21 KB

Contents

# frozen_string_literal: true
# encoding: utf-8

require "spec_helper"

describe BigDecimal do

  describe ".evolve" do

    context "when provided a big decimal" do

      let(:big_decimal) do
        BigDecimal("123456.789")
      end

      it "returns the decimal as a string" do
        expect(described_class.evolve(big_decimal)).to eq(big_decimal.to_s)
      end
    end

    context "when provided a non big decimal" do

      it "returns the object as a string" do
        expect(described_class.evolve("testing")).to eq("testing")
      end
    end

    context "when provided an array of big decimals" do

      let(:bd_one) do
        BigDecimal("123456.789")
      end

      let(:bd_two) do
        BigDecimal("123333.789")
      end

      let(:array) do
        [ bd_one, bd_two ]
      end

      let(:evolved) do
        described_class.evolve(array)
      end

      it "returns the array as strings" do
        expect(evolved).to eq([ bd_one.to_s, bd_two.to_s ])
      end

      it "does not evolve in place" do
        expect(evolved).to_not equal(array)
      end
    end

    context "when provided nil" do

      it "returns nil" do
        expect(described_class.evolve(nil)).to be_nil
      end
    end
  end
end

Version data entries

27 entries across 27 versions & 2 rubygems

Version Path
mongoid-7.3.5 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.3.4 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.1.11 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.2.6 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.3.3 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.3.2 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.2.5 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.1.10 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.1.9 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.2.4 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.3.1 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/mongoid-7.1.7/spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.3.0 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.2.3 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.1.8 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.2.2 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.2.1 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.1.7 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.2.0 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.1.6 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb