about summary refs log tree commit diff
path: root/users/wpcarro/emacs/pkgs/bag/tests.el
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2022-07-30T01·26-0700
committerclbot <clbot@tvl.fyi>2022-07-30T01·29+0000
commit7410928b5bddc12b488b102315260129565ed7ef (patch)
treef745be70202e8e1311cf35d418f7228d178ad97d /users/wpcarro/emacs/pkgs/bag/tests.el
parent6b3f4113cc6ffe79eff0fa0008a1d8d95f5a6bac (diff)
feat(wpcarro/emacs): Package bag.el r/4346
More Elisp packaging :)

Change-Id: I4cf5695fd97ed922b8dfe698a168061042208c73
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6001
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Diffstat (limited to 'users/wpcarro/emacs/pkgs/bag/tests.el')
-rw-r--r--users/wpcarro/emacs/pkgs/bag/tests.el36
1 files changed, 36 insertions, 0 deletions
diff --git a/users/wpcarro/emacs/pkgs/bag/tests.el b/users/wpcarro/emacs/pkgs/bag/tests.el
new file mode 100644
index 000000000000..0cc2a6029e3c
--- /dev/null
+++ b/users/wpcarro/emacs/pkgs/bag/tests.el
@@ -0,0 +1,36 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Dependencies
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(require 'ert)
+(require 'bag)
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Tests
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(setq fixture (bag-from-list '(1 1 1 2 2 3)))
+
+(ert-deftest bag-add ()
+  (and
+   (not (bag-contains? 4 fixture))
+   (bag-contains? 4 (bag-add 4 fixture))))
+
+(ert-deftest bag-remove ()
+  (and
+   (bag-contains? 1 fixture)
+   (not (bag-contains? 3 (bag-remove 3 fixture)))))
+
+(ert-deftest bag-count ()
+  (and
+   (= 3 (bag-count 1 fixture))
+   (= 2 (bag-count 2 fixture))
+   (= 1 (bag-count 3 fixture))))
+
+(ert-deftest bag-total ()
+  (= 6 (bag-total fixture)))
+
+(ert-deftest bag-contains? ()
+  (and
+   (bag-contains? 1 fixture)
+   (not (bag-contains? 4 fixture))))