From cf182d001f66164232b8735bad43eb07121109c6 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Thu, 13 Nov 2025 11:36:06 -0600 Subject: 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 --- tests/test-org-drill.el | 53 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 tests/test-org-drill.el (limited to 'tests/test-org-drill.el') 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 +;; Maintainer: Phillip Lord + +;; 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 . + +;;; 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"))))) -- cgit v1.2.3