Sha256: 0f0f49cb18e96eb796d4a88225619b39f6a480b81c4f72a2741b15744e89729b

Contents?: true

Size: 1.69 KB

Versions: 13

Compression:

Stored size: 1.69 KB

Contents

# frozen_string_literal: true
# encoding: utf-8

require "spec_helper"

describe Mongoid::Matchable::Lt do

  describe "#_matches\?" do

    context "when the value is larger" do

      let(:matcher) do
        described_class.new(5)
      end

      it "returns false" do
        expect(matcher._matches?("$lt" => 3)).to be false
      end
    end

    context "when the value is equal" do

      let(:matcher) do
        described_class.new(3)
      end

      it "returns false" do
        expect(matcher._matches?("$lt" => 3)).to be false
      end
    end

    context "when the value is smaller" do

      let(:matcher) do
        described_class.new(5)
      end

      it "returns true" do
        expect(matcher._matches?("$lt" => 10)).to be true
      end
    end

    context "when the value is nil" do

      let(:matcher) do
        described_class.new(nil)
      end

      it "returns false" do
        expect(matcher._matches?("$lt" => 5)).to be false
      end
    end

    context "when the value is an array" do
      context "there are value valid" do
        let(:matcher) do
          described_class.new([3, 4])
        end

        it "returns true" do
          expect(matcher._matches?("$lt" => 5)).to be true
        end
      end

      context "there are not value valid" do
        let(:matcher) do
          described_class.new([5,6])
        end

        it "returns false" do
          expect(matcher._matches?("$lt" => 5)).to be false
        end

      end
    end

    context "when the value is not numeric" do

      let(:matcher) do
        described_class.new(5)
      end

      it "returns false" do
        expect(matcher._matches?("$lt" => '5.1')).to be false
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
mongoid-7.1.11 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.10 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.9 spec/mongoid/matchable/lt_spec.rb
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/mongoid-7.1.7/spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.8 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.7 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.6 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.5 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.4 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.2 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.1 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.0 spec/mongoid/matchable/lt_spec.rb
mongoid-7.1.0.rc0 spec/mongoid/matchable/lt_spec.rb