diff options
Diffstat (limited to 'test/lisp/arc-mode-tests.el')
-rw-r--r-- | test/lisp/arc-mode-tests.el | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test/lisp/arc-mode-tests.el b/test/lisp/arc-mode-tests.el index e6857671393..79d3ac6365c 100644 --- a/test/lisp/arc-mode-tests.el +++ b/test/lisp/arc-mode-tests.el @@ -21,6 +21,8 @@ (require 'ert) (require 'arc-mode) +(defvar arc-mode-tests-data-directory + (expand-file-name "test/data/decompress" source-directory)) (ert-deftest arc-mode-test-archive-int-to-mode () (let ((alist (list (cons 448 "-rwx------") @@ -32,6 +34,18 @@ (dolist (x alist) (should (equal (cdr x) (archive-int-to-mode (car x))))))) +(ert-deftest arc-mode-test-zip-extract-gz () + (skip-unless (and archive-zip-extract (executable-find (car archive-zip-extract)))) + (skip-unless (executable-find "gzip")) + (let* ((zip-file (expand-file-name "zg.zip" arc-mode-tests-data-directory)) + zip-buffer gz-buffer) + (unwind-protect + (with-current-buffer (setq zip-buffer (find-file-noselect zip-file)) + (setq gz-buffer (archive-extract)) + (should (equal (char-after) ?\N{SNOWFLAKE}))) + (when (buffer-live-p zip-buffer) (kill-buffer zip-buffer)) + (when (buffer-live-p gz-buffer) (kill-buffer gz-buffer))))) + (provide 'arc-mode-tests) ;; arc-mode-tests.el ends here |