terminology/tests
Boris Faure 115cd1ebb4
link detection: handle unicode + mode surrounding cases + test
2020-04-02 00:13:59 +02:00
..
README.md
c2.sh tests: get rid of that useless UTF8CC code 2019-02-06 22:35:12 +01:00
cbt.sh
cell_is_empty.sh termpty: cell is empty if bg is invisible. Closes T7707 2019-02-24 17:06:31 +01:00
cha.sh
cnl.sh
colors.sh
cpl.sh
ctc.sh
cup.sh
cursor-movements-alias.sh termptyesc: support aliases for cursor Up/Left + tests 2019-01-20 20:09:32 +01:00
cursor-movements.sh termptyesc: support aliases for cursor Up/Left + tests 2019-01-20 20:09:32 +01:00
cursor-shape-0.sh
cursor-shape-1.sh
cursor-shape-2.sh
cursor-shape-3.sh
cursor-shape-4.sh
cursor-shape-5.sh
cursor-shape-6.sh
cursor-shape-7.sh
da.sh tests: use shorter sleeps to speed up test execution 2019-02-20 23:12:13 +01:00
dch.sh
decaln.sh
decawm.sh
decbi.sh
deccara-no-rectangular-no-restrict-cursor.sh
deccara-no-rectangular-restrict-cursor.sh
deccara-rectangular-no-restrict-cursor.sh
deccara-rectangular-restrict-cursor.sh
deccra.sh
decera-decfra-extra.sh
decera-no-restrict-cursor.sh
decera-restrict-cursor.sh
decfi.sh
decfra-decera-default-values-no-restrict-cursor.sh
decfra-decera-default-values-restrict-cursor.sh
decfra-no-restrict-cursor.sh
decfra-restrict-cursor.sh
decic-decdc.sh
decrara-no-rectangular-no-restrict-cursor.sh
decrara-no-rectangular-restrict-cursor.sh
decrara-rectangular-no-restrict-cursor.sh
decrara-rectangular-restrict-cursor.sh
decsclm.sh
decst8c.sh
decswbv.sh termptyesc: handle DECSWBV + tests 2019-01-26 22:27:44 +01:00
dl.sh
dsr-cpr.sh tests: use shorter sleeps to speed up test execution 2019-02-20 23:12:13 +01:00
dsr-deccksr.sh
dsr-dir.sh
dsr-kbd.sh
dsr-msr.sh
dsr-os.sh
dsr-pp.sh
dsr-udk.sh
ech.sh
ed-0.sh
ed-1.sh
ed-2.sh
ed-3.sh
ed-4.sh
el.sh
fonts.sh update tests to reflect changes on double-width handling 2019-04-22 22:39:42 +02:00
hang-invalid-truecolors.sh termptyesc: fix hangs spotted by afl-fuzz + tests 2019-03-18 22:34:21 +01:00
hpa.sh
hvp.sh tests: add some on HVP 2019-01-20 18:50:52 +01:00
ich.sh
il.sh
link_detection.sh tests: fix printf usage on alpine 2019-09-15 22:33:44 +02:00
link_detection_email_surrounded.sh tests: add test on link detection with emails being surrounded 2020-04-01 00:00:01 +02:00
link_detection_email_surrounded_more.sh link detection: handle unicode + mode surrounding cases + test 2020-04-02 00:13:59 +02:00
mouse_reporting_mode_all_ext_none.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
mouse_reporting_mode_all_ext_sgr.sh tests: add some on mouse reporting in mode "all", SGR reporting 2019-03-05 22:25:43 +01:00
mouse_reporting_mode_all_ext_urxvt.sh tests: add some on mouse reporting in mode "all", urxvt reporting 2019-03-05 23:10:04 +01:00
mouse_reporting_mode_all_ext_utf8.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
mouse_reporting_mode_mouse_move_pressed_ext_none.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
mouse_reporting_mode_mouse_move_pressed_ext_sgr.sh tests: add some on mouse reporting in ext move while pressed mode, sgr reporting 2019-03-04 23:44:16 +01:00
mouse_reporting_mode_mouse_move_pressed_ext_urxvt.sh tests: add some on mouse reporting in ext move while pressed mode, urxvt reporting 2019-03-05 23:03:35 +01:00
mouse_reporting_mode_mouse_move_pressed_ext_utf8.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
mouse_reporting_mode_normal_ext_none.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
mouse_reporting_mode_normal_ext_sgr.sh tests: add some on mouse reporting in normal mode, sgr reporting 2019-03-04 23:30:09 +01:00
mouse_reporting_mode_normal_ext_urxvt.sh tests: add some on mouse reporting in normal mode, URXVT reporting 2019-03-05 23:00:32 +01:00
mouse_reporting_mode_normal_ext_utf8.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
mouse_reporting_mode_x10_ext_none.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
mouse_reporting_mode_x10_ext_sgr.sh tests: add some on mouse reporting in X10 mode, SGR reporting 2019-03-04 22:50:20 +01:00
mouse_reporting_mode_x10_ext_urxvt.sh tests: add some on mouse reporting in X10 mode, URXVT reporting 2019-03-05 22:59:18 +01:00
mouse_reporting_mode_x10_ext_utf8.sh termiointernals: handle mouse wheel with alt + tests 2019-03-04 23:05:40 +01:00
osc-11-query.sh termptyesc: handle OSC 11 that reports background color 2019-05-26 23:02:53 +02:00
osc-invalid.sh termptyesc: handle invalid values for OSC + test 2019-11-25 20:07:00 +01:00
rep.sh termptyesc: extract REP handler to its own function + tests 2019-01-19 23:02:51 +01:00
resize_window_no_content_change.sh termptyesc: resize parameters were inverted 2019-03-03 15:55:01 +01:00
run_tests.sh
sd.sh
selection_all_directions.sh tests: add some selections in all directions 2019-02-16 18:12:41 +01:00
selection_box_all_directions.sh tests: add some on box selections in all directions 2019-02-16 20:08:31 +01:00
selection_box_drag.sh tests: ensure selection is removed in dragging test 2019-02-23 11:26:33 +01:00
selection_box_simple.sh tests: add some on box selections (with ctrl) 2019-02-14 22:18:00 +01:00
selection_box_to_paragraph.sh tests: update tests due to fix in previous commit 2019-02-25 23:03:51 +01:00
selection_box_to_position.sh tests: update tests due to fix in previous commit 2019-02-25 23:03:51 +01:00
selection_box_to_word.sh tests: fix wrong escape code in selection_box_to_word.sh 2019-09-15 20:58:17 +02:00
selection_double_click.sh tests: add some on double click selection 2019-02-18 20:59:01 +01:00
selection_drag.sh tests: do not keep corners on if click shall invalidate selection 2019-02-21 18:53:18 +01:00
selection_empty_lines.sh tests: add one about selecting over empty lines 2019-11-21 21:50:18 +01:00
selection_in_history.sh add test about bug fixed in e33d07f492 2019-09-02 22:59:26 +02:00
selection_invalidation_line_removed.sh tests: add one on selection invalidation when line got removed 2019-02-27 20:06:34 +01:00
selection_invisible.sh tests: add some tests on selection from/to invisible area 2019-02-23 11:22:35 +01:00
selection_over_multiple_lines.sh tests: not left-trimming 2019-02-23 17:42:39 +01:00
selection_scrolls.sh tests: add a test about selection keeping up while text is scrolling 2019-02-18 22:28:33 +01:00
selection_simple.sh tests: use correct escape code 2019-02-23 17:41:54 +01:00
selection_to_paragraph.sh tests: add some on selection *to* paragraphs 2019-02-24 16:20:03 +01:00
selection_to_position.sh tests/selection_to_position.sh: add "TO" within selection 2019-02-23 20:11:24 +01:00
selection_to_word.sh termiointernals: rewrite _sel_word_to() + update tests 2019-02-25 22:02:11 +01:00
selection_triple_click.sh tests: add some on triple-click selections 2019-02-18 22:09:37 +01:00
selection_with_margins_scrolled.sh tests: add case where selection while text is scrolled in margins 2019-02-19 19:17:50 +01:00
selection_with_tabs.sh tests: works better with the file being committed xD 2019-10-27 16:21:03 +01:00
selection_word_regression.sh termiointernals: fix regression on selecting word at start of line 2019-03-21 22:18:07 +01:00
sgr-leading-trailing-semicolon.sh
sgr-long.sh
sgr-truecolors.sh
shift_in_out.sh tests: fix shift_in_out.sh tests to output ascii in [0x20, 0x7f[ 2019-03-13 14:15:43 +01:00
su.sh
tabs.sh
tbc.sh
tests.results link detection: handle unicode + mode surrounding cases + test 2020-04-02 00:13:59 +02:00
text_append_after_right_margin.sh
title_icon_stack_default.sh termptyesc: add title/icon stack + tests 2019-11-29 23:31:18 +01:00
title_icon_stack_simple.sh termptyesc: add title/icon stack + tests 2019-11-29 23:31:18 +01:00
title_icon_stack_unset.sh termptyesc: add title/icon stack + tests 2019-11-29 23:31:18 +01:00
uts.sh termptyesc: support Unset Tab Stop (only VTE so far) + tests 2019-01-20 12:06:19 +01:00
vpa.sh termptyesc: export VPA handler to its own function + tests 2019-01-20 18:44:08 +01:00
xterm-osc-0-title-icon.sh
xterm-osc-1-icon.sh
xterm-osc-2-title.sh
zero-width-spaces.sh termptyesc: handle zero-width spaces, with test 2020-02-16 18:51:36 +01:00

README.md

Very small test framework for Terminology

Goal

Avoid regressions in Terminology's code that parse and interprets escape codes.

Dependencies

  • tytest, compiled with -D tests=true when running meson
  • a posix shell

Tytest

tytest is a simple binary that takes escape codes in input and output an md5 sum. This checksum is computed on the state of terminology after parsing and interpreting those escape codes.

Test cases

Test cases are simple shell scripts that output escape codes.

How to run the tests

A shell script called run_tests.sh is provided to run all the tests given in a test results file. See run_tests.sh --help for more information.

Test results file

When running a test through tytest, an md5 sum is computed. This checksum is stored with the name of the test in a file called tests.results. If terminology's behaviour changed, then the checksum will change. This will be noticed by run_tests.sh and will show those tests as failed.