summaryrefslogtreecommitdiff
path: root/test/automated/package-test.el
diff options
context:
space:
mode:
authorArtur Malabarba <bruce.connor.am@gmail.com>2015-02-03 11:38:08 +0000
committerArtur Malabarba <bruce.connor.am@gmail.com>2015-02-03 11:38:08 +0000
commit6d767f961fe9f3bff9f59f5902db7925e6da19ef (patch)
tree323c22b223bc9efdb91d087a520d067dff8cbe81 /test/automated/package-test.el
parent2a4a94db1a42c297fc902eba3a2b99afdfc957bc (diff)
downloademacs-6d767f961fe9f3bff9f59f5902db7925e6da19ef.tar.gz
automated/package-test.el (package-test-get-deps): New test.
Diffstat (limited to 'test/automated/package-test.el')
-rw-r--r--test/automated/package-test.el47
1 files changed, 47 insertions, 0 deletions
diff --git a/test/automated/package-test.el b/test/automated/package-test.el
index a8488652c2f..004e2e89895 100644
--- a/test/automated/package-test.el
+++ b/test/automated/package-test.el
@@ -73,6 +73,24 @@
:kind 'single)
"Expected `package-desc' parsed from new-pkg-1.0.el.")
+(defvar simple-depend-desc-1
+ (package-desc-create :name 'simple-depend-1
+ :version '(1 0)
+ :summary "A single-file package with a dependency."
+ :kind 'single
+ :reqs '((simple-depend (1 0))
+ (multi-file (0 1))))
+ "`package-desc' used for testing dependencies.")
+
+(defvar simple-depend-desc-2
+ (package-desc-create :name 'simple-depend-2
+ :version '(1 0)
+ :summary "A single-file package with a dependency."
+ :kind 'single
+ :reqs '((simple-depend-1 (1 0))
+ (multi-file (0 1))))
+ "`package-desc' used for testing dependencies.")
+
(defvar package-test-data-dir (expand-file-name "data/package" package-test-file-dir)
"Base directory of package test files.")
@@ -479,6 +497,35 @@ Must called from within a `tar-mode' buffer."
(should (equal archive-contents
(list 1 package-x-test--single-archive-entry-1-4))))))
+(ert-deftest package-test-get-deps ()
+ "Test `package-test-get-deps' with complex structures."
+ (let ((package-alist
+ (mapcar (lambda (p) (list (package-desc-name p) p))
+ (list simple-single-desc
+ simple-depend-desc
+ multi-file-desc
+ new-pkg-desc
+ simple-depend-desc-1
+ simple-depend-desc-2))))
+ (should
+ (equal (package--get-deps 'simple-depend)
+ '(simple-single)))
+ (should
+ (equal (package--get-deps 'simple-depend 'indirect)
+ nil))
+ (should
+ (equal (package--get-deps 'simple-depend 'direct)
+ '(simple-single)))
+ (should
+ (equal (package--get-deps 'simple-depend-2)
+ '(simple-depend-1 multi-file simple-depend simple-single)))
+ (should
+ (equal (package--get-deps 'simple-depend-2 'indirect)
+ '(simple-depend multi-file simple-single)))
+ (should
+ (equal (package--get-deps 'simple-depend-2 'direct)
+ '(simple-depend-1 multi-file)))))
+
(provide 'package-test)
;;; package-test.el ends here