ConsoleUser

Copyright (c) 2010-2023 Skaion Corporarion, www.skaion.com

This project was developed in part by numerous sponsorships from the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints of Governmental purposes notwithstanding any copyright notation thereon.

All content reflects those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of the U.S. Government or Skaion Corporation.

class SystemImplTest.SystemImplTest(config)

I am the abstract interface to the remote system being controlled. My concrete subclasses know how to actually control a target system, possibly through different methods.

I use the Bridge Pattern with the <no title> class to allow the type of connection to the remote system to be changed without changing any other code.

Parameters:

  • config: a :doc:UserConfig object

click_mouse(button)

Click the given mouse button once.

Parameters:

  • button: which mouse button should be clicked

get_screen()

Get the screen of the remote system as an Region object. The screen is, of course, the largest possible region that could be matched.

Return: a Region object which represents the entire screen

key_down(key)

Hold down a given key. It will be released later by a call to key_up (or some type_str which will also release it).

Parameters:

  • key: the key to hold. This can be any printable character or a special string which indicates one of the meta keys (e.g. SHIFT). Except when the string is a meta key string this should be exactly 1 character long

key_up(key)

Release a given key. It will probably have been held down by a previous call to key_down.

Parameters:

  • key: the key to release. This can be any printable character or a special string which indicates one of the meta keys (e.g. SHIFT). Except when the string is a meta key string this should be exactly 1 character long

mouse_down(button)

Press one button on the mouse and do not release it until a later call.

Parameters:

  • button: which button to press

mouse_up(button)

Release a mouse button which had been pressed (as from a call to mouse_down) earlier.

Parameters:

  • button: which button to release

move_mouse(x, y)

Move the mouse cursor to the given x, y location. Depending on the Mouse Strategy being used the end coordinates may or may not exactly match the given ones.

Parameters:

  • x: the x coordinate the mouse should end in

  • y: the y coordinate the mouse shoudl end in