Class: RSpec::Core::SharedExampleGroupModule
- Inherits:
-
Module
- Object
- Module
- RSpec::Core::SharedExampleGroupModule
- Defined in:
- lib/rspec/core/shared_example_group.rb
Overview
Represents some functionality that is shared with multiple example groups.
The functionality is defined by the provided block, which is lazily
eval'd when the SharedExampleGroupModule
instance is included in an example
group.
Instance Method Summary (collapse)
-
- (void) included(klass)
Ruby callback for when a module is included in another module is class.
-
- (SharedExampleGroupModule) initialize(description, definition)
constructor
A new instance of SharedExampleGroupModule.
-
- (void) inspect
(also: #to_s)
Provides a human-readable representation of this module.
Constructor Details
- (SharedExampleGroupModule) initialize(description, definition)
Returns a new instance of SharedExampleGroupModule
8 9 10 11 |
# File 'lib/rspec/core/shared_example_group.rb', line 8 def initialize(description, definition) @description = description @definition = definition end |
Instance Method Details
- (void) included(klass)
Ruby callback for when a module is included in another module is class. Our definition evaluates the shared group block in the context of the including example group.
22 23 24 25 26 27 |
# File 'lib/rspec/core/shared_example_group.rb', line 22 def included(klass) inclusion_line = klass.[:location] SharedExampleGroupInclusionStackFrame.with_frame(@description, inclusion_line) do klass.class_exec(&@definition) end end |
- (void) inspect Also known as: to_s
Provides a human-readable representation of this module.
14 15 16 |
# File 'lib/rspec/core/shared_example_group.rb', line 14 def inspect "#<#{self.class.name} #{@description.inspect}>" end |