[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/hyperbole 37f1ee0cc3: Add test for kcell:ref-to-id (#16
From: |
ELPA Syncer |
Subject: |
[elpa] externals/hyperbole 37f1ee0cc3: Add test for kcell:ref-to-id (#169) |
Date: |
Fri, 18 Feb 2022 13:57:30 -0500 (EST) |
branch: externals/hyperbole
commit 37f1ee0cc3a779a7df797febbb7d16085c3781bd
Author: Mats Lidell <mats.lidell@lidells.se>
Commit: GitHub <noreply@github.com>
Add test for kcell:ref-to-id (#169)
---
ChangeLog | 5 +++
test/kcell-tests.el | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 97 insertions(+)
diff --git a/ChangeLog b/ChangeLog
index 002dccb22b..4e925fd1a8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2022-02-22 Mats Lidell <matsl@gnu.org>
+
+* test/kcell-tests.el (kcell-tests--ref-to-id): Add test for
+ kcell:ref-to-id.
+
2022-02-13 Bob Weiner <rsw@gnu.org>
* hibtypes.el (elisp-compiler-msg): Add Action Key support for Elisp
diff --git a/test/kcell-tests.el b/test/kcell-tests.el
new file mode 100644
index 0000000000..cd4e1cfcde
--- /dev/null
+++ b/test/kcell-tests.el
@@ -0,0 +1,92 @@
+;;; kcell-tests.el --- Test for kcell -*- lexical-binding: t; -*-
+;; usage: GNU Emacs Lisp Library
+;; keywords: test
+;;
+;; author: Mats Lidell
+;; org: Free Software Foundation, Inc.
+;; e-mail: matsl@gnu.org
+;;
+;; orig-date: 16-Feb-22 at 23:28:49
+;; last-mod: 18-Feb-22 at 19:03:54 by Mats Lidell
+;;
+;; Copyright (C) 2021 Free Software Foundation, Inc.
+;; Licensed under the GNU General Public License, version 3.
+;;
+;; This file is not part of Emacs. It requires Emacs 24.4 or above.
+;; This file is part of Hyperbole.
+;;
+;;; Commentary:
+;;
+;; Tests for "../kotl/kcell.el"
+;;
+
+;;; Code:
+
+(require 'kcell)
+(require 'kotl-mode)
+
+(defconst kcell-tests--ref-to-id-tests
+ ; ref flag kvspec expected
+ '((0 nil "ben" 0)
+ (0 t "ben" 0)
+ (1 nil "ben" 1)
+ (1 t "ben" 1)
+
+ ("1" nil "ben" 1)
+ ("1" t "ben" 1)
+ ("1a" nil "ben" 3)
+ ("1a" t "ben" 3)
+ ("1.1" nil "ben." 3)
+ ("1.1" t "ben." 3)
+ (01 nil "ben" 1)
+ (01 t "ben" 1)
+
+ ("1a=03" nil "ben" 3)
+ ("1a=03" t "ben" 3)
+ ("1.1=03" nil "ben." 3)
+ ("1.1=03" t "ben." 3)
+
+ ("1|xyz" nil "ben" 1)
+ ("1|xyz" t "ben" "01|xyz")
+ ("1a|xyz" nil "ben" 3)
+ ("1a|xyz" t "ben" "03|xyz")
+ ("1.1|xyz" nil "ben." 3)
+ ("1.1|xyz" t "ben." "03|xyz")
+
+ ("1a=03|xyz" nil "ben" 3)
+ ("1a=03|xyz" t "ben" "03|xyz")
+ ("1.1=03|xyz" nil "ben." 3)
+ ("1.1=03|xyz" t "ben." "03|xyz")
+
+ ("1=03|xyz" t "ben" "03|xyz")
+ ("1.2=03|xyz" t "ben." "03|xyz")
+
+ ("1a" nil "ben0" nil)
+ ("1.1" nil "ben0" nil))
+ "Test cases on the form list of REF FLAG KVSPEC EXPECTED.")
+
+(defun kcell-tests--check-ref-to-id (spec)
+ "Check if ref-to-id return expected value given in SPEC.
+Return t if is does else return the SPEC."
+ (let ((ref (nth 0 spec))
+ (flag (nth 1 spec))
+ (kvspec (nth 2 spec))
+ (expected (nth 3 spec)))
+ (kvspec:activate kvspec)
+ (or (equal (kcell:ref-to-id ref flag) expected) spec)))
+
+(ert-deftest kcell-tests--ref-to-id ()
+ "Verify all ref to id transformations."
+ (let ((kotl-file (make-temp-file "hypb" nil ".kotl")))
+ (unwind-protect
+ (progn
+ (find-file kotl-file)
+ (kotl-mode:add-child)
+ (let ((failures (delq t (mapcar (lambda (x) (funcall
#'kcell-tests--check-ref-to-id x)) kcell-tests--ref-to-id-tests))))
+ (if failures
+ (ert-fail (cons "These refs were not correctly converted to
ids:" failures))
+ t)))
+ (delete-file kotl-file))))
+
+(provide 'kcell-tests)
+;;; kcell-tests.el ends here
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [elpa] externals/hyperbole 37f1ee0cc3: Add test for kcell:ref-to-id (#169),
ELPA Syncer <=