From 5dc0129c299f6cc7a0bdfbf7edc92a85bb3a0597 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Thu, 1 Jun 2017 21:29:24 +0300 Subject: [PATCH] Improve testing of octal and hex display of raw bytes * test/manual/redisplay-testsuite.el (test-redisplay-5-toggle) (test-redisplay-5): Add a test with a large codepoint. --- test/manual/redisplay-testsuite.el | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/test/manual/redisplay-testsuite.el b/test/manual/redisplay-testsuite.el index 2175cbab1b7..defc3fee328 100644 --- a/test/manual/redisplay-testsuite.el +++ b/test/manual/redisplay-testsuite.el @@ -294,30 +294,45 @@ static unsigned char x_bits[] = {0xff, 0x81, 0xbd, 0xa5, 0xa5, 0xbd, 0x81, 0xff (insert "\n")) -(defvar test-redisplay-5-expected-overlay nil) -(defvar test-redisplay-5-result-overlay nil) +(defvar test-redisplay-5a-expected-overlay nil) +(defvar test-redisplay-5a-result-overlay nil) +(defvar test-redisplay-5b-expected-overlay nil) +(defvar test-redisplay-5b-result-overlay nil) (defun test-redisplay-5-toggle (_event) (interactive "e") (setq display-raw-bytes-as-hex (not display-raw-bytes-as-hex)) (let ((label (if display-raw-bytes-as-hex "\\x80" "\\200"))) - (overlay-put test-redisplay-5-expected-overlay 'display + (overlay-put test-redisplay-5a-expected-overlay 'display + (propertize label 'face 'escape-glyph))) + (let ((label (if display-raw-bytes-as-hex "\\x3fffc" "\\777774"))) + (overlay-put test-redisplay-5b-expected-overlay 'display (propertize label 'face 'escape-glyph)))) (defun test-redisplay-5 () (insert "Test 5: Display of raw bytes:\n\n") (insert " Expected: ") - (setq test-redisplay-5-expected-overlay + (setq test-redisplay-5a-expected-overlay (test-insert-overlay " " 'display (propertize "\\200" 'face 'escape-glyph))) (insert "\n Result: ") - (setq test-redisplay-5-result-overlay + (setq test-redisplay-5a-result-overlay (test-insert-overlay " " 'display "\200")) (insert "\n\n") + (insert " Expected: ") + ;; This tests a large codepoint, to make sure the internal buffer we + ;; use to produce the representation is large enough. + (aset printable-chars #x3fffc nil) + (setq test-redisplay-5b-expected-overlay + (test-insert-overlay " " 'display + (propertize "\\777774" 'face 'escape-glyph))) + (insert "\n Result: ") + (setq test-redisplay-5b-result-overlay + (test-insert-overlay " " 'display (char-to-string #x3fffc))) + (insert "\n\n") (insert-button "Toggle between octal and hex display" 'action 'test-redisplay-5-toggle)) - (defun test-redisplay () (interactive) (let ((buf (get-buffer "*Redisplay Test*"))) -- 2.39.5