Sha256: ec413be2e909957d54bf11fa7b3013c0a84449fd058b237ffbd7f17fae367c6a

Contents?: true

Size: 1.65 KB

Versions: 20

Compression:

Stored size: 1.65 KB

Contents

require 'rubygems'
require 'merb-core'
require 'merb-slices'
require 'spec'

# Add <%= base_name %>.rb to the search path
Merb::Plugins.config[:merb_slices][:auto_register] = true
Merb::Plugins.config[:merb_slices][:search_path]   = File.join(File.dirname(__FILE__), '..', 'lib', '<%= base_name %>.rb')

# Require <%= base_name %>.rb explicitly so any dependencies are loaded
require Merb::Plugins.config[:merb_slices][:search_path]

# Using Merb.root below makes sure that the correct root is set for
# - testing standalone, without being installed as a gem and no host application
# - testing from within the host application; its root will be used
Merb.start_environment(
  :testing => true, 
  :adapter => 'runner', 
  :environment => ENV['MERB_ENV'] || 'test',
  :session_store => 'memory'
)

module Merb
  module Test
    module SliceHelper
      
      # The absolute path to the current slice
      def current_slice_root
        @current_slice_root ||= File.expand_path(File.join(File.dirname(__FILE__), '..'))
      end
      
      # Whether the specs are being run from a host application or standalone
      def standalone?
        Merb.root == ::<%= module_name %>.root
      end
      
    end
  end
end

Spec::Runner.configure do |config|
  config.include(Merb::Test::ViewHelper)
  config.include(Merb::Test::RouteHelper)
  config.include(Merb::Test::ControllerHelper)
  config.include(Merb::Test::SliceHelper)
end

# You can add your own helpers here
#
Merb::Test.add_helpers do
  def mount_slice
    Merb::Router.prepare { add_slice(:<%= module_name %>, "<%= base_name %>") } if standalone?
  end

  def dismount_slice
    Merb::Router.reset! if standalone?
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
merb-slices-1.1.3 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.1.2 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.1.1 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.1.0 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.1.0.rc1 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.1.0.pre lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.15 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.14 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.13 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.12 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.5 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.11 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.10 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.8.1 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.9 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.7 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.6.1 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.6 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.7.1 lib/generators/templates/full/spec/spec_helper.rb
merb-slices-1.0.8 lib/generators/templates/full/spec/spec_helper.rb