3 (luna-define-class test-riece-log (lunit-test-case))
5 (defun test-riece-log-delete-directory (directory)
6 (let ((files (directory-files directory t nil t)))
8 (if (file-directory-p (car files))
9 (unless (member (file-name-nondirectory (car files)) '("." ".."))
10 (test-riece-log-delete-directory (car files)))
11 (delete-file (car files)))
12 (setq files (cdr files)))
13 (delete-directory directory)))
15 (luna-define-method lunit-test-case-setup ((case test-riece-log))
16 (setq riece-log-directory
17 (expand-file-name (make-temp-name "test-riece-log")
18 (if (featurep 'xemacs)
20 temporary-file-directory))
21 test-riece-log-directory
22 (expand-file-name "riece" riece-log-directory))
23 (make-directory riece-log-directory)
24 (make-directory test-riece-log-directory)
25 (write-region "03:14 <test> a b c\n03:15 <test> a b c\n" nil
26 (expand-file-name "20380119.log" test-riece-log-directory)
28 (write-region "03:14 <test> 1 2 3\n" nil
29 (expand-file-name "20380118.log" test-riece-log-directory)
32 (luna-define-method lunit-test-case-teardown ((case test-riece-log))
33 (test-riece-log-delete-directory riece-log-directory))
35 (luna-define-method test-riece-log-flashback-1 ((case test-riece-log))
36 (let ((riece-log-flashback 3)
37 riece-log-directory-map)
41 (concat "03:14 <test> 1 2 3 (2038/01/18)\n"
42 "03:14 <test> a b c (2038/01/19)\n"
43 "03:15 <test> a b c (2038/01/19)\n")
45 (riece-log-flashback (riece-make-identity "#riece" ""))
48 (luna-define-method test-riece-log-flashback-2 ((case test-riece-log))
49 (let ((riece-log-flashback t)
50 riece-log-directory-map)
55 (riece-log-flashback (riece-make-identity "#riece" ""))
58 (luna-define-method test-riece-log-encode-file-name ((case test-riece-log))
59 (let (riece-log-file-name-coding-system)
63 (riece-log-encode-file-name "#riece")))
66 (equal "=23riece=3A=2A=2Ejp"
67 (riece-log-encode-file-name "#riece:*.jp")))))
69 (luna-define-method test-riece-log-encode-file-name-mule
70 ((case test-riece-log))
71 (let ((riece-log-file-name-coding-system 'iso-8859-1))
74 (equal "=23\xABriece\xBB"
75 (riece-log-encode-file-name
77 (make-char 'latin-iso8859-1 43)
78 (make-char 'latin-iso8859-1 59))))))
79 (let ((riece-log-file-name-coding-system 'iso-2022-jp))
82 (equal "=23=1B=24B=24j=21=3C=249=1B=28B"
83 (riece-log-encode-file-name
85 (make-char 'japanese-jisx0208 36 106)
86 (make-char 'japanese-jisx0208 33 60)
87 (make-char 'japanese-jisx0208 36 57)))))))
89 (luna-define-method test-riece-log-decode-file-name ((case test-riece-log))
90 (let (riece-log-file-name-coding-system)
94 (riece-log-decode-file-name "=23riece")))
98 (riece-log-decode-file-name "=23riece=3A=2A=2Ejp")))))
100 (luna-define-method test-riece-log-decode-file-name-mule
101 ((case test-riece-log))
102 (let ((riece-log-file-name-coding-system 'iso-8859-1))
105 (equal (format "#%criece%c"
106 (make-char 'latin-iso8859-1 43)
107 (make-char 'latin-iso8859-1 59))
108 (riece-log-decode-file-name
109 "=23\xABriece\xBB"))))
110 (let ((riece-log-file-name-coding-system 'iso-2022-jp))
113 (equal (format "#%c%c%c"
114 (make-char 'japanese-jisx0208 36 106)
115 (make-char 'japanese-jisx0208 33 60)
116 (make-char 'japanese-jisx0208 36 57))
117 (riece-log-decode-file-name
118 "=23=1B=24B=24j=21=3C=249=1B=28B")))))