Sha256: 97c035b4ad7d6cf2e27f5f95f5bcfc9030abe594d917fe9f9f0328073cfc2b45
Contents?: true
Size: 1.97 KB
Versions: 38
Compression:
Stored size: 1.97 KB
Contents
require "spec_helper" describe Mongoid::Criteria::Queryable::Forwardable do describe ".select_with" do context "when extending from a class" do before(:all) do class Mountain extend Mongoid::Criteria::Queryable::Forwardable select_with :queryable def self.queryable Query.new end end end after(:all) do Object.send(:remove_const, :Mountain) end context "when provided a symbol" do Mongoid::Criteria::Queryable::Selectable.forwardables.each do |method| it "forwards #{method} to the provided method name" do expect(Mountain).to respond_to(method) end end Mongoid::Criteria::Queryable::Optional.forwardables.each do |method| it "forwards #{method} to the provided method name" do expect(Mountain).to respond_to(method) end end end end context "when extending from a module" do before(:all) do module Finders extend Mongoid::Criteria::Queryable::Forwardable select_with :queryable def self.queryable Query.new end end end after(:all) do Object.send(:remove_const, :Finders) end context "when provided a symbol" do before(:all) do class Mountain extend Finders end end after(:all) do Object.send(:remove_const, :Mountain) end Mongoid::Criteria::Queryable::Selectable.forwardables.each do |method| it "forwards #{method} to the provided method name" do expect(Mountain).to respond_to(method) end end Mongoid::Criteria::Queryable::Optional.forwardables.each do |method| it "forwards #{method} to the provided method name" do expect(Mountain).to respond_to(method) end end end end end end
Version data entries
38 entries across 36 versions & 2 rubygems