if ENV['COVERAGE'] require 'simplecov' SimpleCov.start do add_filter '/spec/' end end $testing = true FLAPJACK_ENV = ENV["FLAPJACK_ENV"] || 'test' ENV['RACK_ENV'] = ENV["FLAPJACK_ENV"] require 'bundler' Bundler.require(:default, :test) require 'webmock/rspec' WebMock.disable_net_connect! $:.unshift(File.dirname(__FILE__) + '/../lib') # Requires supporting files with custom matchers and macros, etc, # in ./support/ and its subdirectories. Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f} class MockLogger attr_accessor :messages def initialize @messages = [] end %w(debug info warn error fatal).each do |level| class_eval <<-RUBY def #{level}(msg) @messages << msg end RUBY end end JsonSpec.configure do # so we include id exclude_keys "created_at", "updated_at" end # This file was generated by the `rspec --init` command. Conventionally, all # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`. # Require this file using `require "spec_helper"` to ensure that it is only # loaded once. # # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration RSpec.configure do |config| config.treat_symbols_as_metadata_keys_with_true_values = true config.run_all_when_everything_filtered = true config.filter_run :focus # Run specs in random order to surface order dependencies. If you find an # order dependency and want to debug it, you can fix the order by providing # the seed, which is printed after each run. # --seed 1234 config.order = 'random' config.around(:each, :redis => true) do |example| @redis = ::Redis.new(:db => 14, :driver => :ruby) @redis.flushdb example.run @redis.quit end config.around(:each, :logger => true) do |example| @logger = MockLogger.new example.run #messages = @logger.messages.compact #p "logger: " + messages.join(", ") unless messages.empty? @logger.messages.clear end config.after(:each, :time => true) do Delorean.back_to_the_present end config.include ErbViewHelper, :erb_view => true config.include Rack::Test::Methods, :sinatra => true config.include JsonSpec::Helpers, :json => true end