module RSpec::Roda::Plugin::ClassInterface
Class interface for plugin specs.
Public Instance Methods
extended(child)
click to toggle source
@param [Module] child
Calls superclass method
# File lib/rspec/roda.rb, line 37 def extended(child) super(child) roda end
roda(plugin = metadata[:name], &block)
click to toggle source
@param [Symbol] plugin @param [Proc] block
# File lib/rspec/roda.rb, line 44 def roda(plugin = metadata[:name], &block) let(:_roda_class) do route_block = self.route_block self.class.const_set(:TestApp, Class.new(::Roda) do include ::RSpec::Matchers include ::RSpec::Mocks::ExampleMethods plugin plugin instance_exec(&block) if block route { |r| instance_exec(r, &route_block) } if route_block end) end end
route(&block)
click to toggle source
@param [Proc] block
# File lib/rspec/roda.rb, line 59 def route(&block) let(:route_block) { block } roda # re-initiate app end
Private Instance Methods
plugin_name()
click to toggle source
@return [Symbol]
# File lib/rspec/roda.rb, line 67 def plugin_name @plugin_name ||= metadata[:name] || Inflector.underscore( Inflector.demodulize(described_class.name) ) end