Class: AutomationObject::State::Screen
- Includes:
 - ContainerHelper
 
- Defined in:
 - lib/automation_object/state/screen.rb
 
Overview
Screen composite for managing state
Instance Attribute Summary collapse
- #automatic_screen_changes ⇒ AutomaticScreenChanges
 - 
  
    
      #modal  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Returns the value of attribute modal.
 - 
  
    
      #previous_screen_name  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Returns the value of attribute previous_screen_name.
 - 
  
    
      #window_handle  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Returns the value of attribute window_handle.
 
Attributes included from ContainerHelper
Attributes inherited from Base
Attributes inherited from Composite
#children, #location, #name, #parent
Instance Method Summary collapse
Methods included from ContainerHelper
#active?, #changes, #element_to_container, #go, #reset
Methods inherited from Base
#get_child, #get_children, #initialize, #screen, #top
Methods inherited from Composite
#add_has_many_relationships, #add_has_one_relationships, #get_child, #get_children, has_many, has_many_relationships, has_one, has_one_relationships, #initialize, #top
Methods included from Reflection
Methods included from CompositeHook
#after_create_run, #before_create_run, included
Constructor Details
This class inherits a constructor from AutomationObject::State::Base
Instance Attribute Details
#automatic_screen_changes ⇒ AutomaticScreenChanges
      26 27 28  | 
    
      # File 'lib/automation_object/state/screen.rb', line 26 def automatic_screen_changes @automatic_screen_changes end  | 
  
#modal ⇒ Object
Returns the value of attribute modal
      23 24 25  | 
    
      # File 'lib/automation_object/state/screen.rb', line 23 def modal @modal end  | 
  
#previous_screen_name ⇒ Object
Returns the value of attribute previous_screen_name
      23 24 25  | 
    
      # File 'lib/automation_object/state/screen.rb', line 23 def previous_screen_name @previous_screen_name end  | 
  
#window_handle ⇒ Object
Returns the value of attribute window_handle
      23 24 25  | 
    
      # File 'lib/automation_object/state/screen.rb', line 23 def window_handle @window_handle end  | 
  
Instance Method Details
#activate ⇒ void
This method returns an undefined value.
      39 40 41 42 43 44 45 46 47 48 49 50 51 52  | 
    
      # File 'lib/automation_object/state/screen.rb', line 39 def activate @active = true self.window_handle = driver.window_handle return if blue_prints.automatic_screen_changes.empty? # Add automatic screen change to a new thread and test for screen changes self.automatic_screen_changes = AutomaticScreenChanges.new(driver, blue_prints.automatic_screen_changes, :automatic_screen_changes, self, location + '[automatic_screen_changes]') automatic_screen_changes.activate end  | 
  
#close ⇒ void
This method returns an undefined value.
      72 73 74 75 76  | 
    
      # File 'lib/automation_object/state/screen.rb', line 72 def close utilize driver.close deactivate end  | 
  
#closed? ⇒ Boolean
      79 80 81  | 
    
      # File 'lib/automation_object/state/screen.rb', line 79 def closed? !driver.window_handles.include?(window_handle) end  | 
  
#deactivate ⇒ void
This method returns an undefined value.
      55 56 57 58 59 60 61 62 63  | 
    
      # File 'lib/automation_object/state/screen.rb', line 55 def deactivate automatic_screen_changes&.deactivate self.automatic_screen_changes, self.window_handle = nil @active = false modals.values.map(&:deactivate) reset end  | 
  
#utilize ⇒ void
This method returns an undefined value.
      66 67 68 69  | 
    
      # File 'lib/automation_object/state/screen.rb', line 66 def utilize raise ScreenNotActiveError, name unless active? driver.window_handle = window_handle end  |