Class: PageModels::Configuration

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/page_models/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



9
10
11
# File 'lib/page_models/configuration.rb', line 9

def initialize
  reset!
end

Instance Attribute Details

#base_urlObject

Returns the value of attribute base_url.



7
8
9
# File 'lib/page_models/configuration.rb', line 7

def base_url
  @base_url
end

#driverObject



28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/page_models/configuration.rb', line 28

def driver
  @driver_instance ||= begin
    case @driver
      when :capybara
        Capybara.current_session
      when :celerity
        Celerity::Browser.new
      else
        Watir::Browser.new(@driver)
    end
  end
end

Instance Method Details

#integrate(framework) ⇒ Object



20
21
22
# File 'lib/page_models/configuration.rb', line 20

def integrate(framework)
  @frameworks << framework
end

#integrate!Object



24
25
26
# File 'lib/page_models/configuration.rb', line 24

def integrate!      
  @frameworks.each { |framework| require "page_models/integration/#{framework}" }
end

#reset!Object



13
14
15
16
17
18
# File 'lib/page_models/configuration.rb', line 13

def reset!
  @driver = :capybara
  @base_url = "http://localhost:3000"
  @frameworks = []
  @driver_instance = nil
end