* Have SB-COVER use md5sums of filenames for URLs.
* Have the test of SB-MD5:MD5SUM-FILE take the md5sum of a fresh empty
file, rather /dev/null or NUL, so that the test is independent of
any other limitations in CL:OPEN on Windows.
(ensure-directories-exist *default-pathname-defaults*)
(maphash (lambda (k v)
(declare (ignore v))
- (let* ((n (substitute #\_ #\. (substitute #\_ #\/ k)))
+ (let* ((n (format nil "~(~{~2,'0X~}~)"
+ (coerce (sb-md5:md5sum-string
+ (sb-ext:native-namestring k))
+ 'list)))
(path (make-pathname :name n :type "html")))
(when (probe-file k)
(with-open-file (stream path
(defsystem sb-cover
#+sb-building-contrib :pathname
#+sb-building-contrib "SYS:CONTRIB;SB-COVER;"
+ :depends-on (sb-md5)
:components ((:file "cover")))
(defsystem sb-cover-tests
("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" . "ab75504250558b788f99d1ebd219abf2"))))
(deftest sb-md5.md5sum-file.0
- (string= (format nil "~(~{~2,'0X~}~)" (coerce (md5sum-file #-win32 "/dev/null" #+win32 "nul") 'list))
- "d41d8cd98f00b204e9800998ecf8427e")
- t)
+ (let ((file
+ (loop with ret
+ for filename = (format nil "md5-test-~6,'0D" (random 100000))
+ do (with-open-file (stream filename :direction :output
+ :if-exists nil
+ :if-does-not-exist :create)
+ (when stream
+ (setf ret stream)))
+ when ret return ret)))
+ (unwind-protect
+ (string= (format nil "~(~{~2,'0X~}~)"
+ (coerce (md5sum-file file) 'list))
+ "d41d8cd98f00b204e9800998ecf8427e")
+ (delete-file file)))
+ t)
(deftest sb-md5.md5sum-sequence.error.0
(handler-case (md5sum-sequence "foo")
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.13.52"
+"1.0.13.53"