Module: Nonnative::Cucumber
- Defined in:
- lib/nonnative/cucumber.rb
Overview
Lazily installs the Cucumber integration once the Cucumber Ruby DSL is ready.
Requiring ‘nonnative` outside a running Cucumber environment should not fail, but when Cucumber does finish booting its support-code registry this installer still needs to register the hooks and step definitions defined here.
Defined Under Namespace
Modules: Assertions, LanguageHook, LifecycleSteps, ProxySteps, Registration, WorldHooks
Class Method Summary collapse
Class Method Details
.bootstrap! ⇒ Object
209 210 211 212 213 214 215 216 217 |
# File 'lib/nonnative/cucumber.rb', line 209 def bootstrap! return if @bootstrapped dsl_singleton = ::Cucumber::Glue::Dsl.singleton_class dsl_singleton.prepend(LanguageHook) unless dsl_singleton.ancestors.include?(LanguageHook) @bootstrapped = true install! end |
.install! ⇒ Object
219 220 221 222 223 224 225 |
# File 'lib/nonnative/cucumber.rb', line 219 def install! return if @installed return unless ready? Registration.install! @installed = true end |