From 1a0b6f1b86dba2735eed95cce607de8e9debdc5c Mon Sep 17 00:00:00 2001 From: Boris Faure Date: Tue, 19 Feb 2019 19:17:50 +0100 Subject: [PATCH] tests: add case where selection while text is scrolled in margins --- tests/selection_with_margins_scrolled.sh | 66 ++++++++++++++++++++++++ tests/tests.results | 1 + 2 files changed, 67 insertions(+) create mode 100755 tests/selection_with_margins_scrolled.sh diff --git a/tests/selection_with_margins_scrolled.sh b/tests/selection_with_margins_scrolled.sh new file mode 100755 index 00000000..cb564f62 --- /dev/null +++ b/tests/selection_with_margins_scrolled.sh @@ -0,0 +1,66 @@ +#!/bin/sh + +# char width: 7 +# char height: 15 + +# clear screen +printf '\033[2J' + +# set color +printf '\033[46;31;3m' + +#move to 2,0 +printf '\033[2H' + +# set text +TEXT="The path of the righteous man is beset on all sides by the iniquities of the selfish and the tyranny of evil men. Blessed is he who, in the name of charity and good will, shepherds the weak through the valley of darkness, for he is truly his brother's keeper and the finder of lost children. And I will strike down upon thee with great vengeance and furious anger those who would attempt to poison and destroy My brothers. And you will know My name is the Lord when I lay My vengeance upon thee." + +# display text +printf "%s\r\n%s\r\n%s" "$TEXT" "$TEXT" "$TEXT" + + +# mouse down to start selection +printf '\033}td;395;148;1;0;0\0' +# mouse move +printf '\033}tm;525;148;0\0' +# mouse up +printf '\033}tu;525;148;1;0;0\0' +# force render +printf '\033}tr\0' +# selection is +printf '\033}tsthe name of charity\0' + +# allow left/right margins +printf '\033[?69h' +# set left/right margins: +printf '\033[15;35s' + +# restrict cursor +printf '\033[?6h' +# move +printf '\033[6;6H' + +# selection is +printf '\033}tsthe name of charity\0' + +# scroll one line +printf '\r\n' + +# selection is +printf '\033}tsthe name of charity\0' + +# scroll 20 lines +for _ in $(seq 20); do + printf '\r\n' +done + +# selection is +printf '\033}tsthe name of charity\0' + +# scroll 20 lines +for _ in $(seq 20); do + printf '\r\n' +done + +# selection is +printf '\033}tsthe name of charity\0' diff --git a/tests/tests.results b/tests/tests.results index 12d51cab..d05655e4 100644 --- a/tests/tests.results +++ b/tests/tests.results @@ -86,3 +86,4 @@ selection_box_drag.sh d52ca96d26bdc7b77cd815870c07195a selection_double_click.sh 8a9cd9ab55dacf0b2eef17d9bc57cd17 selection_triple_click.sh 5b9bafc5802342ff3ee2bc6a8629cbe0 selection_scrolls.sh 0cccd9abeeefb41b7cc6ca3350bfab7c +selection_with_margins_scrolled.sh 9dd8ec681d09d03101b6e5dfcfaa632a