module Lita::RSpec
Extras for RSpec
that facilitate the testing of Lita
code.
Public Class Methods
included(base)
click to toggle source
Causes all interaction with Redis to use a test-specific namespace. Clears Redis before each example. Stubs the logger to prevent log messages from cluttering test output. Clears Lita's global configuration. @param base [Object] The class including the module. @return [void]
# File lib/lita/rspec.rb, line 25 def included(base) base.class_eval do let(:registry) do if Lita.version_3_compatibility_mode? Lita else Registry.new end end before do logger = double("Logger").as_null_object allow(Lita).to receive(:logger).and_return(logger) stub_const("Lita::REDIS_NAMESPACE", "lita.test") keys = Lita.redis.keys("*") Lita.redis.del(keys) unless keys.empty? registry.clear_config if Lita.version_3_compatibility_mode? end end end