Commit 151da6da authored by Eric Timmons's avatar Eric Timmons
Browse files

Simplify tests

parent a495a848
......@@ -5,89 +5,110 @@
(byte-contents (alexandria:read-stream-content-into-byte-vector stream)))
(babel:octets-to-string byte-contents :encoding :utf-8)))
(defun a.txt (type entry)
(para:is equal "a.txt" (tar:name entry))
(para:is = 14 (tar:size entry))
(unless (eql type :ustar)
(para:is equal "root" (tar:uname entry))
(para:is equal "root" (tar:gname entry)))
(para:is = #o644 (tar:mode entry))
(para:true (tar:entry-regular-file-p entry))
(para:is = 1628903146 (tar:mtime entry))
(para:is = 0 (tar:uid entry))
(para:is = 0 (tar:gid entry))
(para:is equal "Hello, world!
" (contents-as-string entry)))
(defun a-symlink.txt (type entry)
(para:is equal "a-symlink.txt" (tar:name entry))
(para:is = 0 (tar:size entry))
(unless (eql type :ustar)
(para:is equal "root" (tar:uname entry))
(para:is equal "root" (tar:gname entry)))
(para:is = #o777 (tar:mode entry))
(para:true (tar:entry-symbolic-link-p entry))
(para:is = 1628903146 (tar:mtime entry))
(para:is = 0 (tar:uid entry))
(para:is = 0 (tar:gid entry))
(para:is equal "a.txt" (tar:linkname entry)))
(defun a-hardlink.txt (type entry)
(para:is equal "a-hardlink.txt" (tar:name entry))
(para:is = 0 (tar:size entry))
(unless (eql type :ustar)
(para:is equal "root" (tar:uname entry))
(para:is equal "root" (tar:gname entry)))
(para:is = #o644 (tar:mode entry))
(para:true (tar:entry-hard-link-p entry))
(para:is = 1628903146 (tar:mtime entry))
(para:is = 0 (tar:uid entry))
(para:is = 0 (tar:gid entry))
(para:is equal "a.txt" (tar:linkname entry)))
(defun fifo (type entry)
(para:is equal "fifo" (tar:name entry))
(para:is = 0 (tar:size entry))
(para:is equal "root" (tar:uname entry))
(para:is equal "root" (tar:gname entry))
(para:is = #o644 (tar:mode entry))
(para:true (tar:entry-fifo-p entry))
(para:is = 1628903146 (tar:mtime entry))
(para:is = 0 (tar:uid entry))
(para:is = 0 (tar:gid entry)))
(defun sda1 (type entry)
(para:is equal "sda1" (tar:name entry))
(para:is = 0 (tar:size entry))
(para:is equal "root" (tar:uname entry))
(para:is equal "root" (tar:gname entry))
(para:is = #o644 (tar:mode entry))
(para:true (tar:entry-block-device-p entry))
(para:is = 1628903146 (tar:mtime entry))
(para:is = 0 (tar:uid entry))
(para:is = 0 (tar:gid entry))
(para:is = 8 (tar:devmajor entry))
(para:is = 1 (tar:devminor entry)))
(defun tty0 (type entry)
(para:is equal "tty0" (tar:name entry))
(para:is = 0 (tar:size entry))
(para:is equal "root" (tar:uname entry))
(para:is equal "root" (tar:gname entry))
(para:is = #o644 (tar:mode entry))
(para:true (tar:entry-character-device-p entry))
(para:is = 1628903146 (tar:mtime entry))
(para:is = 0 (tar:uid entry))
(para:is = 0 (tar:gid entry))
(para:is = 4 (tar:devmajor entry))
(para:is = 0 (tar:devminor entry)))
(para:define-test read-ustar
(tar:with-open-archive (a (asdf:system-relative-pathname
:cl-tar "test/ustar.tar"))
(let (entry)
;; First entry is a plain file, with the contents "Hello, world!"
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "a.txt")
(para:is = (tar:size entry) 14)
(para:is equal (tar:uname entry) "root")
(para:is equal (tar:gname entry) "root")
(para:is = (tar:mode entry) #o644)
(para:true (tar:entry-regular-file-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is equal "Hello, world!
" (contents-as-string entry))
(a.txt :ustar entry)
;; Next is the a-symlink.txt -> a.txt symlink
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "a-symlink.txt")
(para:is = (tar:size entry) 0)
(para:is equal (tar:uname entry) "root")
(para:is equal (tar:gname entry) "root")
(para:is = (tar:mode entry) #o777)
(para:true (tar:entry-symbolic-link-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is equal (tar:linkname entry) "a.txt")
(a-symlink.txt :ustar entry)
;; Next is the a-hardlink.txt -> a.txt hardlink
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "a-hardlink.txt")
(para:is = (tar:size entry) 0)
(para:is equal (tar:uname entry) "root")
(para:is equal (tar:gname entry) "root")
(para:is = (tar:mode entry) #o644)
(para:true (tar:entry-hard-link-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is equal (tar:linkname entry) "a.txt")
(a-hardlink.txt :ustar entry)
;; fifo
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "fifo")
(para:is = (tar:size entry) 0)
(para:is equal (tar:uname entry) "root")
(para:is equal (tar:gname entry) "root")
(para:is = (tar:mode entry) #o644)
(para:true (tar:entry-fifo-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(fifo :ustar entry)
;; sda1
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "sda1")
(para:is = (tar:size entry) 0)
(para:is equal (tar:uname entry) "root")
(para:is equal (tar:gname entry) "root")
(para:is = (tar:mode entry) #o644)
(para:true (tar:entry-block-device-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is = (tar:devmajor entry) 8)
(para:is = (tar:devminor entry) 1)
(sda1 :ustar entry)
;; tty0
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "tty0")
(para:is = (tar:size entry) 0)
(para:is equal (tar:uname entry) "root")
(para:is equal (tar:gname entry) "root")
(para:is = (tar:mode entry) #o644)
(para:true (tar:entry-character-device-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is = (tar:devmajor entry) 4)
(para:is = (tar:devminor entry) 0)
(tty0 :ustar entry)
;; End of archive
(setf entry (tar:read-entry-from-archive a))
......@@ -99,36 +120,15 @@
(let (entry)
;; First entry is a plain file, with the contents "Hello, world!"
(setf entry (tar:read-entry-from-archive a))
(para:is = (tar:size entry) 14)
(para:is = (tar:mode entry) #o644)
(para:true (tar:entry-regular-file-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is equal "Hello, world!
" (contents-as-string entry))
(a.txt :ustar entry)
;; Next is the a-symlink.txt -> a.txt symlink
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "a-symlink.txt")
(para:is = (tar:size entry) 0)
(para:is = (tar:mode entry) #o777)
(para:true (tar:entry-symbolic-link-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is equal (tar:linkname entry) "a.txt")
(a-symlink.txt :ustar entry)
;; Next is the a-hardlink.txt -> a.txt hardlink
(setf entry (tar:read-entry-from-archive a))
(para:is equal (tar:name entry) "a-hardlink.txt")
(para:is = (tar:size entry) 0)
(para:is = (tar:mode entry) #o644)
(para:true (tar:entry-hard-link-p entry))
(para:is = (tar:mtime entry) 1628903146)
(para:is = (tar:uid entry) 0)
(para:is = (tar:gid entry) 0)
(para:is equal (tar:linkname entry) "a.txt")
(a-hardlink.txt :ustar entry)
;; End of archive
(setf entry (tar:read-entry-from-archive a))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment