Class: Capybara::Apparition::DevToolsProtocol::TargetManager

Inherits:
Object
  • Object
show all
Defined in:
lib/capybara/apparition/dev_tools_protocol/target_manager.rb

Instance Method Summary collapse

Constructor Details

#initializeTargetManager

Returns a new instance of TargetManager.



8
9
10
# File 'lib/capybara/apparition/dev_tools_protocol/target_manager.rb', line 8

def initialize
  @targets = {}
end

Instance Method Details

#add(id, target) ⇒ Object



16
17
18
# File 'lib/capybara/apparition/dev_tools_protocol/target_manager.rb', line 16

def add(id, target)
  @targets[id] = target
end

#delete(id) ⇒ Object



20
21
22
# File 'lib/capybara/apparition/dev_tools_protocol/target_manager.rb', line 20

def delete(id)
  @targets.delete(id)
end

#get(id) ⇒ Object



12
13
14
# File 'lib/capybara/apparition/dev_tools_protocol/target_manager.rb', line 12

def get(id)
  @targets[id]
end

#pagesObject



24
25
26
# File 'lib/capybara/apparition/dev_tools_protocol/target_manager.rb', line 24

def pages
  @targets.values.select { |target| target.info['type'] == 'page' }.map(&:page)
end

#target?(id) ⇒ Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/capybara/apparition/dev_tools_protocol/target_manager.rb', line 28

def target?(id)
  @targets.key?(id)
end

#window_handlesObject



32
33
34
# File 'lib/capybara/apparition/dev_tools_protocol/target_manager.rb', line 32

def window_handles
  @targets.values.select { |target| target.info['type'] == 'page' }.map(&:id).compact
end