Sha256: 82d81f4ae8a4cc8339c7f9110a25609c388919230b25e85ed651cae16f45bbdf

Contents?: true

Size: 1.19 KB

Versions: 8

Compression:

Stored size: 1.19 KB

Contents

# frozen_string_literal: true

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

8 entries across 8 versions & 1 rubygems

Version Path
mongoid-7.5.4 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.5.3 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.5.2 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.5.1 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.4.3 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.5.0 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.4.1 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb
mongoid-7.4.0 spec/mongoid/criteria/queryable/extensions/big_decimal_spec.rb