diff options
author | Stefan Kangas <stefan@marxist.se> | 2021-02-10 12:20:32 +0100 |
---|---|---|
committer | Stefan Kangas <stefan@marxist.se> | 2021-02-10 13:00:00 +0100 |
commit | 62ee5999a725b0561c625277e3756657de9e4360 (patch) | |
tree | a5ef09ca64aff7527aa4fe01785cf64ec93823ec /test/manual/cedet/srecode-tests.el | |
parent | def546679fd93a4a1d049d9d3021166bf66a0e26 (diff) | |
download | emacs-62ee5999a725b0561c625277e3756657de9e4360.tar.gz emacs-62ee5999a725b0561c625277e3756657de9e4360.tar.bz2 emacs-62ee5999a725b0561c625277e3756657de9e4360.zip |
Convert tests for srecode/fields.el to ert
* test/manual/cedet/srecode-tests.el: Move from here...
* test/lisp/cedet/srecode/fields-tests.el: ...to here.
(srecode-field-utest-impl): Convert test to ert. Silence
byte-compiler.
* test/manual/cedet/cedet-utests.el (cedet-utest-libs): Don't
list the above moved file.
Diffstat (limited to 'test/manual/cedet/srecode-tests.el')
-rw-r--r-- | test/manual/cedet/srecode-tests.el | 244 |
1 files changed, 0 insertions, 244 deletions
diff --git a/test/manual/cedet/srecode-tests.el b/test/manual/cedet/srecode-tests.el deleted file mode 100644 index 18ca07343d6..00000000000 --- a/test/manual/cedet/srecode-tests.el +++ /dev/null @@ -1,244 +0,0 @@ -;;; srecode-tests.el --- Some tests for CEDET's srecode -*- lexical-binding: t -*- - -;; Copyright (C) 2008-2021 Free Software Foundation, Inc. - -;; Author: Eric M. Ludlam <zappo@gnu.org> - -;; This file is part of GNU Emacs. - -;; GNU Emacs 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. - -;; GNU Emacs 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 GNU Emacs. If not, see <https://www.gnu.org/licenses/>. - -;;; Commentary: - -;; Extracted from srecode-fields.el and srecode-document.el in the -;; CEDET distribution. - -;;; Code: - -;;; From srecode-fields: - -(require 'srecode/fields) - -(defvar srecode-field-utest-text - "This is a test buffer. - -It is filled with some text." - "Text for tests.") - -(defun srecode-field-utest () - "Test the srecode field manager." - (interactive) - (srecode-field-utest-impl)) - -(defun srecode-field-utest-impl () - "Implementation of the SRecode field utest." - (save-excursion - (find-file "/tmp/srecode-field-test.txt") - - (erase-buffer) - (goto-char (point-min)) - (insert srecode-field-utest-text) - (set-buffer-modified-p nil) - - ;; Test basic field generation. - (let ((srecode-field-archive nil) - (f nil)) - - (end-of-line) - (forward-word -1) - - (setq f (srecode-field "Test" - :name "TEST" - :start 6 - :end 8)) - - (when (or (not (slot-boundp f 'overlay)) (not (oref f overlay))) - (error "Field test: Overlay info not created for field")) - - (when (and (overlayp (oref f overlay)) - (not (overlay-get (oref f overlay) 'srecode-init-only))) - (error "Field creation overlay is not tagged w/ init flag")) - - (srecode-overlaid-activate f) - - (when (or (not (overlayp (oref f overlay))) - (overlay-get (oref f overlay) 'srecode-init-only)) - (error "New field overlay not created during activation")) - - (when (not (= (length srecode-field-archive) 1)) - (error "Field test: Incorrect number of elements in the field archive")) - (when (not (eq f (car srecode-field-archive))) - (error "Field test: Field did not auto-add itself to the field archive")) - - (when (not (overlay-get (oref f overlay) 'keymap)) - (error "Field test: Overlay keymap not set")) - - (when (not (string= "is" (srecode-overlaid-text f))) - (error "Field test: Expected field text 'is', not %s" - (srecode-overlaid-text f))) - - ;; Test deletion. - (srecode-delete f) - - (when (slot-boundp f 'overlay) - (error "Field test: Overlay not deleted after object delete")) - ) - - ;; Test basic region construction. - (let* ((srecode-field-archive nil) - (reg nil) - (fields - (list - (srecode-field "Test1" :name "TEST-1" :start 5 :end 10) - (srecode-field "Test2" :name "TEST-2" :start 15 :end 20) - (srecode-field "Test3" :name "TEST-3" :start 25 :end 30) - - (srecode-field "Test4" :name "TEST-4" :start 35 :end 35)) - )) - - (when (not (= (length srecode-field-archive) 4)) - (error "Region Test: Found %d fields. Expected 4" - (length srecode-field-archive))) - - (setq reg (srecode-template-inserted-region "REG" - :start 4 - :end 40)) - - (srecode-overlaid-activate reg) - - ;; Make sure it was cleared. - (when srecode-field-archive - (error "Region Test: Did not clear field archive")) - - ;; Auto-positioning. - (when (not (eq (point) 5)) - (error "Region Test: Did not reposition on first field")) - - ;; Active region - (when (not (eq (srecode-active-template-region) reg)) - (error "Region Test: Active region not set")) - - ;; Various sizes - (mapc (lambda (T) - (if (string= (object-name-string T) "Test4") - (progn - (when (not (srecode-empty-region-p T)) - (error "Field %s is not empty" - (object-name T))) - ) - (when (not (= (srecode-region-size T) 5)) - (error "Calculated size of %s was not 5" - (object-name T))))) - fields) - - ;; Make sure things stay up after a 'command'. - (srecode-field-post-command) - (when (not (eq (srecode-active-template-region) reg)) - (error "Region Test: Active region did not stay up")) - - ;; Test field movement. - (when (not (eq (srecode-overlaid-at-point 'srecode-field) - (nth 0 fields))) - (error "Region Test: Field %s not under point" - (object-name (nth 0 fields)))) - - (srecode-field-next) - - (when (not (eq (srecode-overlaid-at-point 'srecode-field) - (nth 1 fields))) - (error "Region Test: Field %s not under point" - (object-name (nth 1 fields)))) - - (srecode-field-prev) - - (when (not (eq (srecode-overlaid-at-point 'srecode-field) - (nth 0 fields))) - (error "Region Test: Field %s not under point" - (object-name (nth 0 fields)))) - - ;; Move cursor out of the region and have everything cleaned up. - (goto-char 42) - (srecode-field-post-command) - (when (srecode-active-template-region) - (error "Region Test: Active region did not clear on move out")) - - (mapc (lambda (T) - (when (slot-boundp T 'overlay) - (error "Overlay did not clear off of field %s" - (object-name T)))) - fields) - - ;; End of LET - ) - - ;; Test variable linkage. - (let* ((srecode-field-archive nil) - (f1 (srecode-field "Test1" :name "TEST" :start 6 :end 8)) - (f2 (srecode-field "Test2" :name "TEST" :start 28 :end 30)) - (f3 (srecode-field "Test3" :name "NOTTEST" :start 35 :end 40)) - (reg (srecode-template-inserted-region "REG" :start 4 :end 40)) - ) - (srecode-overlaid-activate reg) - - (when (not (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f2))) - (error "Linkage Test: Init strings are not =")) - (when (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f3)) - (error "Linkage Test: Init string on dissimilar fields is now the same")) - - (goto-char 7) - (insert "a") - - (when (not (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f2))) - (error "Linkage Test: mid-insert strings are not =")) - (when (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f3)) - (error "Linkage Test: mid-insert string on dissimilar fields is now the same")) - - (goto-char 9) - (insert "t") - - (when (not (string= (srecode-overlaid-text f1) "iast")) - (error "Linkage Test: tail-insert failed to captured added char")) - (when (not (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f2))) - (error "Linkage Test: tail-insert strings are not =")) - (when (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f3)) - (error "Linkage Test: tail-insert string on dissimilar fields is now the same")) - - (goto-char 6) - (insert "b") - - (when (not (string= (srecode-overlaid-text f1) "biast")) - (error "Linkage Test: tail-insert failed to captured added char")) - (when (not (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f2))) - (error "Linkage Test: tail-insert strings are not =")) - (when (string= (srecode-overlaid-text f1) - (srecode-overlaid-text f3)) - (error "Linkage Test: tail-insert string on dissimilar fields is now the same")) - - ;; Cleanup - (srecode-delete reg) - ) - - (set-buffer-modified-p nil) - - (message " All field tests passed.") - )) - -;;; srecode-tests.el ends here |