module Barn::Helpers

Forwards all ‘define` and `build` calls to a barn configured on the class.

class SomeTest

include Barn::Helpers
self.barn = MyCustomBarn

end

Attributes

barn[W]

Public Class Methods

barn() click to toggle source
# File lib/barn/helpers.rb, line 21
def barn
  @barn || ::Barn
end
included(base) click to toggle source
# File lib/barn/helpers.rb, line 11
def self.included(base)
  base.class_eval do
    extend Forwardable
    def_delegators :"self.class.barn", :define, :build

    class <<self
      extend Forwardable
      def_delegators :"self.barn", :define, :build

      attr_writer :barn
      def barn
        @barn || ::Barn
      end
    end
  end
end