1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
| | ;;; wallpaper-tests.el --- tests for wallpaper.el -*- lexical-binding: t -*-
;; Copyright (C) 2022 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
;;; Code:
(require 'ert)
(require 'ert-x)
(require 'wallpaper)
(ert-deftest wallpaper--find-command/return-string ()
(should (or (not (wallpaper--find-command))
(stringp (wallpaper--find-command)))))
(ert-deftest wallpaper--find-command-args/return-list ()
(should (or (not (wallpaper--find-command-args))
(listp (wallpaper--find-command-args)))))
(ert-deftest wallpaper--image-file-regexp/return-string ()
(should (stringp (wallpaper--image-file-regexp))))
(ert-deftest wallpaper--get-default-file/empty-gives-nil ()
(with-temp-buffer
(should-not (wallpaper--get-default-file))))
(ert-deftest wallpaper--get-default-file/visiting-file ()
(ert-with-temp-file _
:buffer buf
:suffix (format ".%s" (car image-file-name-extensions))
(with-current-buffer buf
(should (wallpaper--get-default-file)))))
(ert-deftest wallpaper--get-default-file/file-at-point ()
;; ffap needs the file to exist
(ert-with-temp-file fil
:buffer buf
:suffix (format ".%s" (car image-file-name-extensions))
(with-current-buffer buf
(insert fil)
(should (stringp (wallpaper--get-default-file))))))
(ert-deftest wallpaper--format-arg/filename ()
(should (file-name-absolute-p (wallpaper--format-arg "%f" "foo.jpg"))))
(ert-deftest wallpaper--format-arg/filename-hex ()
(should (equal (wallpaper--format-arg "%F" "foo bar åäö.jpg")
"foo%20bar%20%C3%A5%C3%A4%C3%B6.jpg")))
(ert-deftest wallpaper--format-arg/width ()
(skip-unless noninteractive)
(should (equal (wallpaper--format-arg "%w" "foo.jpg")
(number-to-string wallpaper-default-width))))
(ert-deftest wallpaper--format-arg/height ()
(skip-unless noninteractive)
(should (equal (wallpaper--format-arg "%h" "foo.jpg")
(number-to-string wallpaper-default-height))))
(ert-deftest wallpaper--format-arg/screen ()
(skip-unless noninteractive)
(should (equal (wallpaper--format-arg "%S" "foo.jpg") "0")))
(ert-deftest wallpaper--format-arg/monitor ()
(skip-unless noninteractive)
(should (equal (wallpaper--format-arg "%M" "foo.jpg") "0")))
(ert-deftest wallpaper--format-arg/workspace ()
(skip-unless noninteractive)
(should (equal (wallpaper--format-arg "%W" "foo.jpg") "0")))
;;; wallpaper-tests.el ends here
|