Sha256: b05fa7551af3ee9221f2cf515394f69f8b730604920fe7f684048fba176490a3

Contents?: true

Size: 1.42 KB

Versions: 27

Compression:

Stored size: 1.42 KB

Contents

# frozen_string_literal: true
# encoding: utf-8

require "spec_helper"

describe Float do

  describe ".evolve" do

    context "when provided a string" do

      context "when the string is a number" do

        context "when the string is an integer" do

          it "returns a float" do
            expect(described_class.evolve("1")).to eq(1.0)
          end
        end

        context "when the string is a float" do

          it "converts it to a float" do
            expect(described_class.evolve("2.23")).to eq(2.23)
          end
        end
      end

      context "when the string is not a number" do

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

    context "when provided an array of strings" do

      it "returns the array of floats" do
        expect(described_class.evolve([ "2.23" ])).to eq([ 2.23 ])
      end
    end

    context "when provided a number" do

      context "when the number is an integer" do

        it "returns a float" do
          expect(described_class.evolve(1)).to eq(1.0)
        end
      end

      context "when the number is a float" do

        it "returns the float" do
          expect(described_class.evolve(2.23)).to eq(2.23)
        end
      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/float_spec.rb
mongoid-7.3.4 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.1.11 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.2.6 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.3.3 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.3.2 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.2.5 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.1.10 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.1.9 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.2.4 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.3.1 spec/mongoid/criteria/queryable/extensions/float_spec.rb
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/mongoid-7.1.7/spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.3.0 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.2.3 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.1.8 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.2.2 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.2.1 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.1.7 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.2.0 spec/mongoid/criteria/queryable/extensions/float_spec.rb
mongoid-7.1.6 spec/mongoid/criteria/queryable/extensions/float_spec.rb