Browse Source

test-org-agenda: Test agenda buffername when reload sticky agenda

* testing/lisp/test-org-agenda.el: One additional test to Check that
  buffer name remains the same after reload.  (BTW some cleanup.)
Marco Wahl 8 years ago
parent
commit
f50f8d0d10
1 changed files with 73 additions and 51 deletions
  1. 73 51
      testing/lisp/test-org-agenda.el

+ 73 - 51
testing/lisp/test-org-agenda.el

@@ -1,4 +1,4 @@
-;;; test-org-agenda.el --- Tests for org-agenda.el -*- lexical-binding: t; -*-
+;;; test-org-agenda.el --- Tests for org-agenda.el -*- lexical-binding: t ; -*-
 
 
 ;; Copyright (C) 2017 Marco Wahl
 ;; Copyright (C) 2017 Marco Wahl
 
 
@@ -27,37 +27,34 @@
 (require 'org-agenda)
 (require 'org-agenda)
 
 
 
 
-;; Auxilliaries for set-up and tear-down and more.
+;; General auxilliaries
 
 
-(defun -sha1-as-defun-name-accc70505c6664ed226e3afa45ca0ecc95a35e83 ()
-  "Name a function with the sha1 of the function text.
-Use this function if you are too lazy to invent a function name.
+;; (possibly better move to some location in the source.)
+
+;; Prefixing with '---' on this page.
+
+;; Evaluate the following function for no brainer function naming.
+(defun ---sha1-as-defun-name-39e8857766df959d8b52f9c38739f5a77c392ec0 ()
+  "Insert the sha1 of the function text in front of arglist.
 The function text starts at the argument list and ends at the
 The function text starts at the argument list and ends at the
-last paren (exclusive)."
+last paren (exclusive).
+Use this function if you are too lazy to invent a function name."
   (interactive)
   (interactive)
-  (save-excursion
-    (let* ((start (progn
-                    (beginning-of-defun)
-                    (search-forward-regexp "\(" nil nil 2)
-                    (backward-char)
-                    (point)))
-           (end (progn
-                  (end-of-defun)
-                  (backward-char)
-                  (point)))
-           (sha1 (sha1 (current-buffer) start end)))
-      ;; relying on (point) is within the defun
-      (progn
-        (beginning-of-defun)
-        (search-forward-regexp " ")
-        (skip-chars-forward " \t")
-        (just-one-space))
-      (unless (= ?\( (char-after))
-        (delete-region (point) (progn (forward-word) (point)))
-        (just-one-space))
-      (insert sha1 " "))))
-
-(defun -kill-all-agendas ()
+  (let* ((start (progn
+		  (beginning-of-defun)
+		  (search-forward-regexp "\(" nil nil 2)
+		  (backward-char)
+		  (point)))
+	 (end (progn
+		(end-of-defun)
+		(backward-char)
+		(point)))
+	 (sha1 (sha1 (current-buffer) start end)))
+    (goto-char start)
+    (insert sha1 " ")
+    (backward-word)))
+
+(defun ---kill-all-agendas ()
   "Kill all agenda buffers."
   "Kill all agenda buffers."
   (mapc #'kill-buffer
   (mapc #'kill-buffer
         (cl-remove-if-not
         (cl-remove-if-not
@@ -66,50 +63,75 @@ last paren (exclusive)."
            (eq major-mode 'org-agenda-mode))
            (eq major-mode 'org-agenda-mode))
          (buffer-list))))
          (buffer-list))))
 
 
+(defun ---agenda-buffers ()
+    "Return agenda buffers in a list."
+    (cl-remove-if-not
+     (lambda (x)
+       (set-buffer x)
+       (eq major-mode 'org-agenda-mode))
+     (buffer-list)))
+
 
 
 ;; Test the Agenda
 ;; Test the Agenda
 
 
-(ert-deftest org-e9d91f5add1245445ba773dd74ac534273113ca5 ()
+(ert-deftest org-agenda-90c5dce0435b74ba7e9682a4a9a393aeea741739 ()
   "Empty agenda."
   "Empty agenda."
+  (cl-assert (not org-agenda-sticky) nil "precondition violation")
+  (cl-assert (not (---agenda-buffers)) nil "precondition violation")
   (let ((org-agenda-span 'day)
   (let ((org-agenda-span 'day)
         org-agenda-files)
         org-agenda-files)
     (org-agenda-list)
     (org-agenda-list)
     (set-buffer org-agenda-buffer-name)
     (set-buffer org-agenda-buffer-name)
-    (should (= 2 (count-lines (point-min) (point-max))))))
+    (should (= 2 (count-lines (point-min) (point-max)))))
+  (---kill-all-agendas))
 
 
-(ert-deftest org-a0116aeccdedc04580e42933a16c2893d76ee6bc ()
+(ert-deftest org-agenda-668f0e69003051b79eb421146f7626ac9438c105 ()
   "One informative line in the agenda."
   "One informative line in the agenda."
+  (cl-assert (not org-agenda-sticky) nil "precondition violation")
+  (cl-assert (not (---agenda-buffers)) nil "precondition violation")
   (let ((org-agenda-span 'day)
   (let ((org-agenda-span 'day)
 	(org-agenda-files `(,(expand-file-name "examples/agenda-file.org" org-test-dir))))
 	(org-agenda-files `(,(expand-file-name "examples/agenda-file.org" org-test-dir))))
     (org-agenda-list nil  "<2017-03-10 Fri>")
     (org-agenda-list nil  "<2017-03-10 Fri>")
     (set-buffer org-agenda-buffer-name)
     (set-buffer org-agenda-buffer-name)
-    (should (= 3 (count-lines (point-min) (point-max))))))
+    (should (= 3 (count-lines (point-min) (point-max)))))
+  (---kill-all-agendas))
 
 
-(ert-deftest org-165802102bb2d2accf16ff0ae362ef51945ae69f ()
+(ert-deftest org-agenda-8e6c85e9ff1ea9fed0ae0fa04ff9a3dace6c9d17 ()
   "Agenda buffer name after having created one sticky agenda buffer."
   "Agenda buffer name after having created one sticky agenda buffer."
-  (-kill-all-agendas)
-  ;; (setq org-agenda-buffer-name "*Org Agenda*")
+  (cl-assert (not org-agenda-sticky) nil "precondition violation")
+  (cl-assert (not (---agenda-buffers)) nil "precondition violation")
   (let ((org-agenda-span 'day)
   (let ((org-agenda-span 'day)
-	(org-agenda-buffer-name "*Org Agenda*")
-	(default-org-agenda-buffer-name org-agenda-buffer-name)
 	(buf (get-buffer org-agenda-buffer-name))
 	(buf (get-buffer org-agenda-buffer-name))
         org-agenda-files)
         org-agenda-files)
     (when buf (kill-buffer buf))
     (when buf (kill-buffer buf))
     (org-test-with-temp-text "<2017-03-17 Fri>"
     (org-test-with-temp-text "<2017-03-17 Fri>"
-      (org-follow-timestamp-link) 	; creates a sticky agenda.
-      )
-    (-kill-all-agendas)
+			     (org-follow-timestamp-link) 	; creates a sticky agenda.
+			     )
+    (---kill-all-agendas)
+    (org-agenda-list)
+    (should (= 1 (length (---agenda-buffers))))
+    (should (string= "*Org Agenda*"
+		     (buffer-name (car (---agenda-buffers))))))
+  (---kill-all-agendas))
+
+(ert-deftest org-agenda-9fa27658bf61d8fe2c5b6f9177e9e8ce07f11f7b ()
+  "Agenda buffer name of sticky agenda after reload."
+  (cl-assert (not org-agenda-sticky) nil "precondition violation")
+  (cl-assert (not (---agenda-buffers)) nil "precondition violation")
+  (org-toggle-sticky-agenda)
+  (let (org-agenda-files)
     (org-agenda-list)
     (org-agenda-list)
-    (let ((agenda-buffers
-	   (cl-remove-if-not
-	    (lambda (x)
-	      (set-buffer x)
-	      (eq major-mode 'org-agenda-mode))
-	    (buffer-list))))
-      (should (= 1 (length agenda-buffers)))
-      (should (string= default-org-agenda-buffer-name
-                       (buffer-name (car agenda-buffers))))))
-  (-kill-all-agendas))
+    (let* ((agenda-buffer-name
+	    (progn
+	      (assert (= 1 (length (---agenda-buffers))))
+	      (buffer-name (car (---agenda-buffers))))))
+      (set-buffer agenda-buffer-name)
+      (org-agenda-redo)
+      (should (= 1 (length (---agenda-buffers))))
+      (should (string= agenda-buffer-name
+                       (buffer-name (car (---agenda-buffers)))))))
+  (org-toggle-sticky-agenda)
+  (---kill-all-agendas))
 
 
 
 
 (provide 'test-org-agenda)
 (provide 'test-org-agenda)