2
;;;; Author: Paul Dietz
3
;;;; Created: Tue Jan 6 05:32:37 2004
4
;;;; Contains: Tests of TRUENAME
9
(let* ((pn #p"truename.lsp")
12
(notnot (pathnamep pn))
13
(typep pn 'logical-pathname)
14
(equalt (pathname-name pn) (pathname-name tn))
15
(equalt (pathname-type pn) (pathname-type tn))
20
(let* ((name "truename.lsp")
24
(notnot (pathnamep pn))
25
(typep pn 'logical-pathname)
26
(equalt (pathname-name pn) (pathname-name tn))
27
(equalt (pathname-type pn) (pathname-type tn))
32
(let* ((pn #p"truename.lsp"))
34
(s pn :direction :input)
35
(let ((tn (truename s)))
37
(notnot (pathnamep pn))
38
(typep pn 'logical-pathname)
39
(equalt (pathname-name pn) (pathname-name tn))
40
(equalt (pathname-type pn) (pathname-type tn))
45
(let* ((pn #p"truename.lsp"))
46
(let ((s (open pn :direction :input)))
48
(let ((tn (truename s)))
50
(notnot (pathnamep pn))
51
(typep pn 'logical-pathname)
52
(equalt (pathname-name pn) (pathname-name tn))
53
(equalt (pathname-type pn) (pathname-type tn))
58
(let* ((lpn "CLTEST:foo.txt")
59
(pn (translate-logical-pathname lpn)))
60
(unless (probe-file lpn)
61
(with-open-file (s lpn :direction :output) (format s "Stuff~%")))
62
(let ((tn (truename lpn)))
64
(notnot (pathnamep pn))
65
(if (equalt (pathname-name pn) (pathname-name tn))
66
t (list (pathname-name pn) (pathname-name tn)))
67
(if (equalt (pathname-type pn) (pathname-type tn))
68
t (list (pathname-type pn) (pathname-type tn)))
74
(deftest truename.error.1
75
(signals-error (truename) program-error)
78
(deftest truename.error.2
79
(signals-error (truename "truename.lsp" nil) program-error)
82
(deftest truename.error.3
83
(signals-error (truename "nonexistent") file-error)
86
(deftest truename.error.4
87
(signals-error (truename #p"nonexistent") file-error)
90
(deftest truename.error.5
91
(signals-error (truename (logical-pathname "CLTESTROOT:nonexistent")) file-error)
94
(deftest truename.error.6
96
(let ((pn (make-pathname :name :wild
97
:defaults *default-pathname-defaults*)))
98
(truename pn)) file-error)