module MediaWiki::TestWiki::RSpecAdapter
Constants
- PROXY_NAME
- Proxy
Public Class Methods
enhance(config, *args)
click to toggle source
# File lib/media_wiki/test_wiki/rspec_adapter.rb 41 def enhance(config, *args) 42 return if config.respond_to?(PROXY_NAME) 43 init_config(Proxy.new, config, *args) 44 config 45 end
extended(base)
click to toggle source
# File lib/media_wiki/test_wiki/rspec_adapter.rb 47 def extended(base) 48 init_proxy(RSpec.configuration.send(PROXY_NAME), base.metadata) 49 base 50 end
Private Class Methods
init_config(mw, config, *args)
click to toggle source
# File lib/media_wiki/test_wiki/rspec_adapter.rb 54 def init_config(mw, config, *args) 55 config.add_setting PROXY_NAME, default: mw 56 57 config.after :context, *args do mw.pool.clean end 58 config.extend self, *args 59 config.include Helpers, *args 60 61 config.filter_run_excluding required_version: lambda { |value| 62 version = mw.version and not 63 Gem::Requirement.new(Array(value)).satisfied_by?(version) 64 } 65 end
init_proxy(mw, options = {})
click to toggle source
# File lib/media_wiki/test_wiki/rspec_adapter.rb 67 def init_proxy(mw, options = {}) 68 version, size = options.values_at(:version, :pool_size) 69 70 mw.pool = DockerPool.new(size, nil, true) { |config| 71 mw.version = Gem::Version.new(config.version = version) if version 72 mw.config = { username: config.username, password: config.password } 73 } 74 end