From: Basil L. Contovounesios Date: Mon, 3 Oct 2022 20:34:07 +0000 (+0300) Subject: Update image-circular-tests.el X-Git-Tag: emacs-29.0.90~1616^2~619 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f5c6e628ed311761cfe9c0d2dd68baa2806abab4;p=emacs.git Update image-circular-tests.el * test/manual/image-circular-tests.el (image-test-duplicate-keywords): Skip unless images are supported. (image-test-circular-plist, image-test-:type-property-value): Ditto. Wrap only failing forms in should[-error] rather than entire test bodies. Use simpler printed notation in place of function calls. (image-test-circular-specs): Ditto. Wrap overly wide docstring. Mark as failing since shortly after its introduction (bug#36403#63). --- diff --git a/test/manual/image-circular-tests.el b/test/manual/image-circular-tests.el index 1299970f827..d2187cbbadc 100644 --- a/test/manual/image-circular-tests.el +++ b/test/manual/image-circular-tests.el @@ -27,8 +27,11 @@ (require 'ert) +(declare-function image-size "image.c" (spec &optional pixels frame)) + (ert-deftest image-test-duplicate-keywords () "Test that duplicate keywords in an image spec lead to rejection." + (skip-unless (display-images-p)) (should-error (image-size `(image :type xbm :type xbm :data-width 1 :data-height 1 :data ,(bool-vector t)) @@ -36,33 +39,37 @@ (ert-deftest image-test-circular-plist () "Test that a circular image spec is rejected." - (should-error - (let ((l `(image :type xbm :data-width 1 :data-height 1 - :data ,(bool-vector t)))) - (setcdr (last l) '#1=(:invalid . #1#)) - (image-size l t)))) + (skip-unless (display-images-p)) + (let ((spec `(image :type xbm :data-width 1 :data-height 1 + :data ,(bool-vector t) + . ,'#1=(:invalid . #1#)))) + (should-error (image-size spec t)))) (ert-deftest image-test-:type-property-value () "Test that :type is allowed as a property value in an image spec." + (skip-unless (display-images-p)) (should (equal (image-size `(image :dummy :type :type xbm :data-width 1 :data-height 1 :data ,(bool-vector t)) t) - (cons 1 1)))) + '(1 . 1)))) (ert-deftest image-test-circular-specs () - "Test that circular image spec property values do not cause infinite recursion." - (should - (let* ((circ1 (cons :dummy nil)) - (circ2 (cons :dummy nil)) - (spec1 `(image :type xbm :data-width 1 :data-height 1 - :data ,(bool-vector 1) :ignored ,circ1)) - (spec2 `(image :type xbm :data-width 1 :data-height 1 + "Test with circular image spec property values. +In particular, test that they do not cause infinite recursion." + :expected-result :failed ;; FIXME: bug#36403#63. + (skip-unless (display-images-p)) + ;; Two copies needed to warm up image cache. + (let* ((circ1 (list :dummy)) + (circ2 (list :dummy)) + (spec1 `(image :type xbm :data-width 1 :data-height 1 + :data ,(bool-vector 1) :ignored ,circ1)) + (spec2 `(image :type xbm :data-width 1 :data-height 1 :data ,(bool-vector 1) :ignored ,circ2))) - (setcdr circ1 circ1) - (setcdr circ2 circ2) - (and (equal (image-size spec1 t) (cons 1 1)) - (equal (image-size spec2 t) (cons 1 1)))))) + (setcdr circ1 circ1) + (setcdr circ2 circ2) + (should (equal (image-size spec1 t) '(1 . 1))) + (should (equal (image-size spec2 t) '(1 . 1))))) (provide 'image-circular-tests) ;;; image-circular-tests.el ends here.