class Capybara::Apparition::Frame

Attributes

element_id[RW]
id[R]
parent_id[R]

Public Class Methods

new(page, params) click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 8
def initialize(page, params)
  @page = page
  @id = params[:frameId] || params['frameId'] || params['id']
  @parent_id = params['parentFrameId'] || params['parentId']
  @context_id = nil
  @state = nil
  @element_id = nil
  @frame_mutex = Mutex.new
  @loader_id = @prev_loader_id = nil
end

Public Instance Methods

context_id() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 19
def context_id
  @frame_mutex.synchronize do
    @context_id
  end
end
context_id=(id) click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 25
def context_id=(id)
  @frame_mutex.synchronize do
    @context_id = id
  end
end
loaded!() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 67
def loaded!
  @prev_loader_id = loader_id
  puts "Setting loaded - was #{loader_id}" if ENV['DEBUG']
  self.loader_id = nil
end
loaded?() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 63
def loaded?
  @loader_id.nil?
end
loader_id() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 43
def loader_id
  @frame_mutex.synchronize do
    @loader_id
  end
end
loading(id) click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 49
def loading(id)
  puts "Setting loading to #{id}" if ENV['DEBUG']
  self.loader_id = id
end
loading?() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 59
def loading?
  !@loader_id.nil?
end
obsolete!() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 73
def obsolete!
  self.state = :obsolete
end
obsolete?() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 77
def obsolete?
  state == :obsolete
end
reloading!() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 54
def reloading!
  puts 'Reloading' if ENV['DEBUG']
  self.loader_id = @prev_loader_id
end
state() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 37
def state
  @frame_mutex.synchronize do
    @state
  end
end
state=(state) click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 31
def state=(state)
  @frame_mutex.synchronize do
    @state = state
  end
end
usable?() click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 81
def usable?
  context_id && !loading?
end

Private Instance Methods

loader_id=(id) click to toggle source
# File lib/capybara/apparition/page/frame.rb, line 87
def loader_id=(id)
  @frame_mutex.synchronize do
    @loader_id = id
  end
end