Sha256: 73df573a2222d3992839d208f7af0ad16df5134523a0029806245bd8c5b98a0d

Contents?: true

Size: 1.11 KB

Versions: 13

Compression:

Stored size: 1.11 KB

Contents

# frozen_string_literal: true
# encoding: utf-8

require "spec_helper"

describe Mongoid::Matchable::Nin do

  describe "#_matches?" do

    context 'when the attribute is not nil' do

    let(:matcher) do
      described_class.new("first")
    end

      context "when the values do not contain the attribute" do

        it "returns true" do
          expect(matcher._matches?("$nin" => ["second", "third"])).to be true
        end
      end

      context "when the values contain the attribute" do

        it "returns false" do
          expect(matcher._matches?("$nin" => ["first"])).to be false
        end
      end
    end

    context 'when the attribute is nil' do
      let(:matcher) do
        described_class.new(nil)
      end

      context "when the values do not contain the attribute" do

        it "returns true" do
          expect(matcher._matches?("$nin" => ["third"])).to be true
        end
      end

      context "when the values contain the attribute" do

        it "returns false" do
          expect(matcher._matches?("$nin" => [/\Afir.*\z/, nil])).to be false
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

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