aboutsummaryrefslogtreecommitdiffhomepage
path: root/fish_tests.cpp
diff options
context:
space:
mode:
authorGravatar ridiculousfish <corydoras@ridiculousfish.com>2014-07-26 14:07:17 -0700
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2014-07-26 14:07:17 -0700
commitd07ea3b66abcbdc4efbd91d3dc9f83952990e2fd (patch)
treeccd81bef6cf9099d539acb03d5d8ac2f0e2b19fe /fish_tests.cpp
parent2bb08a4ca0bc5e31e109abf7d627324c74f98436 (diff)
Teach fish to compute the length of more escape sequences.
Fixes #1243
Diffstat (limited to 'fish_tests.cpp')
-rw-r--r--fish_tests.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/fish_tests.cpp b/fish_tests.cpp
index 6584380d..a415d08e 100644
--- a/fish_tests.cpp
+++ b/fish_tests.cpp
@@ -1209,6 +1209,13 @@ static void test_escape_sequences(void)
if (escape_code_length(L"\x1b[2J") != 4) err(L"test_escape_sequences failed on line %d\n", __LINE__);
if (escape_code_length(L"\x1b[38;5;123mABC") != strlen("\x1b[38;5;123m")) err(L"test_escape_sequences failed on line %d\n", __LINE__);
if (escape_code_length(L"\x1b@") != 2) err(L"test_escape_sequences failed on line %d\n", __LINE__);
+ if (escape_code_length(L"\x1b@") != 2) err(L"test_escape_sequences failed on line %d\n", __LINE__);
+
+ // iTerm2 escape sequences
+ if (escape_code_length(L"\x1b]50;CurrentDir=/tmp/foo\x07NOT_PART_OF_SEQUENCE") != 24) err(L"test_escape_sequences failed on line %d\n", __LINE__);
+ if (escape_code_length(L"\x1b]50;SetMark\x07NOT_PART_OF_SEQUENCE") != 12) err(L"test_escape_sequences failed on line %d\n", __LINE__);
+ if (escape_code_length(L"\x1b" L"]6;1;bg;red;brightness;255\x07NOT_PART_OF_SEQUENCE") != 27) err(L"test_escape_sequences failed on line %d\n", __LINE__);
+ if (escape_code_length(L"\x1b]Pg4040ff\x1b\\NOT_PART_OF_SEQUENCE") != 10) err(L"test_escape_sequences failed on line %d\n", __LINE__);
}
class lru_node_test_t : public lru_node_t