Module: StimulusSpec
- Defined in:
- lib/stimulus_spec.rb,
lib/stimulus_spec/version.rb,
lib/stimulus_spec/matchers.rb,
lib/stimulus_spec/configuration.rb,
lib/stimulus_spec/capybara/matchers.rb,
lib/stimulus_spec/matchers/have_stimulus_class.rb,
lib/stimulus_spec/matchers/have_stimulus_value.rb,
lib/stimulus_spec/matchers/have_stimulus_action.rb,
lib/stimulus_spec/matchers/have_stimulus_outlet.rb,
lib/stimulus_spec/matchers/have_stimulus_target.rb,
lib/stimulus_spec/matchers/have_stimulus_controller.rb,
lib/stimulus_spec/capybara/matchers/have_stimulus_class.rb,
lib/stimulus_spec/capybara/matchers/have_stimulus_value.rb,
lib/stimulus_spec/capybara/matchers/have_stimulus_action.rb,
lib/stimulus_spec/capybara/matchers/have_stimulus_outlet.rb,
lib/stimulus_spec/capybara/matchers/have_stimulus_target.rb,
lib/stimulus_spec/capybara/matchers/have_stimulus_controller.rb
Overview
RSpec matchers for testing Stimulus controller wiring in Rails applications.
Provides matchers for asserting +data-controller+, +data-action+, +data--target+, +data---value+, +data---class+, and +data--*-outlet+ attributes in rendered HTML and Capybara pages.
Defined Under Namespace
Modules: Capybara, Matchers Classes: Configuration, Error
Constant Summary collapse
- VERSION =
"0.7.0"
Class Method Summary collapse
-
.configuration ⇒ Configuration
The current configuration instance.
-
.configure {|config| ... } ⇒ void
Yields the configuration for modification.
-
.install_rspec_integration(config) ⇒ void
Includes matchers into RSpec example groups when stimulus-rails is present.
-
.reset_configuration! ⇒ Configuration
Replaces the current configuration with a fresh instance.
Class Method Details
.configuration ⇒ Configuration
Returns the current configuration instance.
25 26 27 |
# File 'lib/stimulus_spec.rb', line 25 def self.configuration @configuration ||= Configuration.new end |
.configure {|config| ... } ⇒ void
This method returns an undefined value.
Yields the configuration for modification.
33 34 35 |
# File 'lib/stimulus_spec.rb', line 33 def self.configure yield configuration end |
.install_rspec_integration(config) ⇒ void
This method returns an undefined value.
Includes matchers into RSpec example groups when stimulus-rails is present.
48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/stimulus_spec.rb', line 48 def self.install_rspec_integration(config) return unless Gem.loaded_specs.key?("stimulus-rails") return unless configuration.auto_include %i[request controller].each do |type| config.include StimulusSpec::Matchers, type: type end return unless Gem.loaded_specs.key?("capybara") %i[system feature].each do |type| config.include StimulusSpec::Capybara::Matchers, type: type end end |
.reset_configuration! ⇒ Configuration
Replaces the current configuration with a fresh instance.
40 41 42 |
# File 'lib/stimulus_spec.rb', line 40 def self.reset_configuration! @configuration = Configuration.new end |