Sha256: ab2da4c5995bf6ad03d94685bef61170cc7a06e6ee14947daa2283690a5c54a2

Contents?: true

Size: 1 KB

Versions: 4

Compression:

Stored size: 1 KB

Contents

module Spec
  module Example
    
    module BeforeAndAfterHooks
      
      def before(scope = :each, &block)
        before_parts(scope) << block
      end
      
      alias_method :append_before, :before
      
      def before_each_parts
        @before_each_parts ||= []
      end
      
      def before_all_parts
        @before_all_parts ||= []
      end
      
      def before_parts(scope)
        if scope == :each
          before_each_parts
        elsif scope == :all
          before_all_parts
        else
          []
        end
      end
      
      
      def after(scope = :each, &block)
        after_parts(scope) << block
      end
      
      def after_each_parts
        @after_each_parts ||= []
      end
      
      def after_all_parts
        @after_all_parts ||= []
      end
      
      def after_parts(scope)
        if scope == :each
          after_each_parts
        elsif scope == :all
          after_all_parts
        else
          []
        end
      end
      
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
opal-0.3.6 lib/ospec/example/before_and_after_hooks.rb
opal-0.3.2 gems/ospec/lib/ospec/example/before_and_after_hooks.rb
opal-0.3.1 gems/ospec/lib/ospec/example/before_and_after_hooks.rb
opal-0.3.0 gems/ospec/lib/ospec/example/before_and_after_hooks.rb