Class: TTYtest::Terminal
- Inherits:
-
Object
- Object
- TTYtest::Terminal
- Extended by:
- Forwardable
- Defined in:
- lib/ttytest/terminal.rb
Instance Attribute Summary collapse
-
#max_wait_time ⇒ Integer
the maximum amount of time (in seconds) to retry assertions before failing.
Instance Method Summary collapse
-
#capture ⇒ Capture
Capture the current state of the terminal.
- #cursor_hidden? ⇒ true, false
- #cursor_visible? ⇒ true, false
- #cursor_x ⇒ Integer
- #cursor_y ⇒ Integer
- #height ⇒ Integer
-
#initialize(driver_terminal, max_wait_time: nil) ⇒ Terminal
constructor
private
A new instance of Terminal.
- #row(row) ⇒ String
- #rows ⇒ Array<String>
-
#send_backspace ⇒ Object
Simulate typing the backspace key in the terminal.
-
#send_delete ⇒ Object
Simulate typing the delete key in the terminal.
-
#send_keys(*keys) ⇒ Object
Simulate typing keys into the terminal.
-
#send_keys_exact ⇒ Object
Send tmux send-keys command to the terminal, such as DC or Enter, to simulate pressing that key in the terminal.
-
#send_keys_one_at_a_time(keys) ⇒ Object
Simulate typing keys into the terminal.
-
#send_newline ⇒ Object
Simulate typing enter by sending newline character to the terminal.
- #width ⇒ Integer
Constructor Details
#initialize(driver_terminal, max_wait_time: nil) ⇒ Terminal
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Terminal.
16 17 18 19 |
# File 'lib/ttytest/terminal.rb', line 16 def initialize(driver_terminal, max_wait_time: nil) @driver_terminal = driver_terminal @max_wait_time = max_wait_time || TTYtest.default_max_wait_time end |
Instance Attribute Details
#max_wait_time ⇒ Integer
the maximum amount of time (in seconds) to retry assertions before failing.
9 10 11 |
# File 'lib/ttytest/terminal.rb', line 9 def max_wait_time @max_wait_time end |
Instance Method Details
#capture ⇒ Capture
Capture the current state of the terminal
38 39 40 41 42 43 44 45 46 |
# File 'lib/ttytest/terminal.rb', line 38 def_delegators :@driver_terminal, :send_keys, :send_keys_one_at_a_time, :send_newline, :send_newlines, :send_delete, :send_deletes, :send_backspace, :send_backspaces, :send_left_arrow, :send_left_arrows, :send_right_arrow, :send_right_arrows, :send_down_arrow, :send_down_arrows, :send_up_arrow, :send_up_arrows, :send_keys_exact, :capture |
#cursor_hidden? ⇒ true, false
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |
#cursor_visible? ⇒ true, false
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |
#cursor_x ⇒ Integer
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |
#cursor_y ⇒ Integer
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |
#height ⇒ Integer
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |
#row(row) ⇒ String
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |
#rows ⇒ Array<String>
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |
#send_backspace ⇒ Object
Simulate typing the backspace key in the terminal.
38 39 40 41 42 43 44 45 46 |
# File 'lib/ttytest/terminal.rb', line 38 def_delegators :@driver_terminal, :send_keys, :send_keys_one_at_a_time, :send_newline, :send_newlines, :send_delete, :send_deletes, :send_backspace, :send_backspaces, :send_left_arrow, :send_left_arrows, :send_right_arrow, :send_right_arrows, :send_down_arrow, :send_down_arrows, :send_up_arrow, :send_up_arrows, :send_keys_exact, :capture |
#send_delete ⇒ Object
Simulate typing the delete key in the terminal.
38 39 40 41 42 43 44 45 46 |
# File 'lib/ttytest/terminal.rb', line 38 def_delegators :@driver_terminal, :send_keys, :send_keys_one_at_a_time, :send_newline, :send_newlines, :send_delete, :send_deletes, :send_backspace, :send_backspaces, :send_left_arrow, :send_left_arrows, :send_right_arrow, :send_right_arrows, :send_down_arrow, :send_down_arrows, :send_up_arrow, :send_up_arrows, :send_keys_exact, :capture |
#send_keys(*keys) ⇒ Object
Simulate typing keys into the terminal. For canonical cli’s/shells which read line by line.
38 39 40 41 42 43 44 45 46 |
# File 'lib/ttytest/terminal.rb', line 38 def_delegators :@driver_terminal, :send_keys, :send_keys_one_at_a_time, :send_newline, :send_newlines, :send_delete, :send_deletes, :send_backspace, :send_backspaces, :send_left_arrow, :send_left_arrows, :send_right_arrow, :send_right_arrows, :send_down_arrow, :send_down_arrows, :send_up_arrow, :send_up_arrows, :send_keys_exact, :capture |
#send_keys_exact ⇒ Object
Send tmux send-keys command to the terminal, such as DC or Enter, to simulate pressing that key in the terminal.
38 39 40 41 42 43 44 45 46 |
# File 'lib/ttytest/terminal.rb', line 38 def_delegators :@driver_terminal, :send_keys, :send_keys_one_at_a_time, :send_newline, :send_newlines, :send_delete, :send_deletes, :send_backspace, :send_backspaces, :send_left_arrow, :send_left_arrows, :send_right_arrow, :send_right_arrows, :send_down_arrow, :send_down_arrows, :send_up_arrow, :send_up_arrows, :send_keys_exact, :capture |
#send_keys_one_at_a_time(keys) ⇒ Object
Simulate typing keys into the terminal. For noncanonical cli’s/shells which read character by character.
38 39 40 41 42 43 44 45 46 |
# File 'lib/ttytest/terminal.rb', line 38 def_delegators :@driver_terminal, :send_keys, :send_keys_one_at_a_time, :send_newline, :send_newlines, :send_delete, :send_deletes, :send_backspace, :send_backspaces, :send_left_arrow, :send_left_arrows, :send_right_arrow, :send_right_arrows, :send_down_arrow, :send_down_arrows, :send_up_arrow, :send_up_arrows, :send_keys_exact, :capture |
#send_newline ⇒ Object
Simulate typing enter by sending newline character to the terminal.
38 39 40 41 42 43 44 45 46 |
# File 'lib/ttytest/terminal.rb', line 38 def_delegators :@driver_terminal, :send_keys, :send_keys_one_at_a_time, :send_newline, :send_newlines, :send_delete, :send_deletes, :send_backspace, :send_backspaces, :send_left_arrow, :send_left_arrows, :send_right_arrow, :send_right_arrows, :send_down_arrow, :send_down_arrows, :send_up_arrow, :send_up_arrows, :send_keys_exact, :capture |
#width ⇒ Integer
72 |
# File 'lib/ttytest/terminal.rb', line 72 def_delegators :capture, :rows, :row, :width, :height, :cursor_x, :cursor_y, :cursor_visible?, :cursor_hidden? |