File: test-e2wm-pst-class.el

package info (click to toggle)
e2wm 1.2%2Bgit20120601-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 268 kB
  • sloc: lisp: 3,508; sh: 36; makefile: 2
file content (40 lines) | stat: -rw-r--r-- 1,231 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
;; How to run:
;;   emacs -batch \
;;       -L PATH/TO/E2WM/ \
;;       -L PATH/TO/WINDOW-LAYOUT/ \
;;       -l PATH/TO/test-e2wm-pst-class.el \
;;       -f ert-run-tests-batch-and-exit


(require 'ert)
(require 'e2wm)


(ert-deftest e2wm-pst-class-simple-inheritance ()
  (let* ((expected-result 1)
         (super-class
          (make-e2wm:$pst-class :init (lambda () expected-result)))
         (class
          (make-e2wm:$pst-class
           :extend super-class
           :init (lambda () (e2wm:$pst-class-super))))
         (result (e2wm:method-call
                  #'e2wm:$pst-class-init class nil)))
    (should (equal result expected-result))))


(ert-deftest e2wm-pst-class-grandchild ()
  (let* ((expected-result 1)
         (grand-class
          (make-e2wm:$pst-class :init (lambda () expected-result)))
         (super-class
          (make-e2wm:$pst-class
           :extend grand-class
           :init (lambda () (e2wm:$pst-class-super))))
         (class
          (make-e2wm:$pst-class
           :extend super-class
           :init (lambda () (e2wm:$pst-class-super))))
         (result (e2wm:method-call
                  #'e2wm:$pst-class-init class nil)))
    (should (equal result expected-result))))