diff options
| author | Craig Jennings <c@cjennings.net> | 2025-11-13 11:36:06 -0600 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-11-13 11:36:06 -0600 |
| commit | cf182d001f66164232b8735bad43eb07121109c6 (patch) | |
| tree | a70cc6f6d16a2c4cbb67c6850e59728158f3f383 /tests/test-org-drill.el | |
| parent | 87e74a3a6ccf5b05b760e9f8beec9a78886ab076 (diff) | |
| download | org-drill-cf182d001f66164232b8735bad43eb07121109c6.tar.gz org-drill-cf182d001f66164232b8735bad43eb07121109c6.zip | |
test: Add Phase 1 foundation tests for critical functions
- Add unit tests for org-drill-entry-p (14 tests)
- Add unit tests for org-drill-part-of-drill-entry-p (14 tests)
- Add unit tests for SM2 scheduling algorithm (23 tests)
- Add integration test for basic drill workflow (11 tests)
- Update Makefile to support test-*.el naming pattern
- Rename org-drill-test.el to test-org-drill.el for consistency
Total: 65 tests, all passing
Diffstat (limited to 'tests/test-org-drill.el')
| -rw-r--r-- | tests/test-org-drill.el | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/tests/test-org-drill.el b/tests/test-org-drill.el new file mode 100644 index 0000000..4765a99 --- /dev/null +++ b/tests/test-org-drill.el @@ -0,0 +1,53 @@ +;;; org-drill-test.el + +;;; Header: + +;; This file is not part of Emacs + +;; Author: Phillip Lord <phillip.lord@russet.org.uk> +;; Maintainer: Phillip Lord <phillip.lord@russet.org.uk> + +;; The contents of this file are subject to the GPL License, Version 3.0. + +;; Copyright (C) 2019, Phillip Lord + +;; This program is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see <http://www.gnu.org/licenses/>. + +;;; Code: + +(require 'assess) +(require 'org-drill) + +(defvar this-directory + (file-name-directory + (or load-file-name (buffer-file-name)))) + +(ert-deftest load-test () + (should t)) + +(ert-deftest find-entries () + (should + (equal '(2 38 66) + (assess-with-find-file + (assess-make-related-file + (concat this-directory "one-two-three.org")) + (org-drill-map-entries (lambda () (point)) 'file nil))))) + +(ert-deftest find-tagged-entries () + (should + (equal '(2) + (assess-with-find-file + (assess-make-related-file + (concat this-directory "one-two-three.org")) + (org-drill-map-entries (lambda () (point)) 'file "tagtest"))))) |
