]> code.delx.au - gnu-emacs-elpa/blob - packages/avy/avy-test.el
Merge commit '0cda39255827f283e7578cd469ae42daad9556a2' from js2-mode
[gnu-emacs-elpa] / packages / avy / avy-test.el
1 ;;; avy-test.el --- Tests for avy
2
3 ;; Copyright (C) 2015 Free Software Foundation, Inc.
4
5 ;; Author: Oleh Krehel
6
7 ;; This file is part of GNU Emacs.
8
9 ;; GNU Emacs is free software: you can redistribute it and/or modify
10 ;; it under the terms of the GNU General Public License as published by
11 ;; the Free Software Foundation, either version 3 of the License, or
12 ;; (at your option) any later version.
13
14 ;; GNU Emacs is distributed in the hope that it will be useful,
15 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 ;; GNU General Public License for more details.
18
19 ;; You should have received a copy of the GNU General Public License
20 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21
22 ;;; Commentary:
23 ;;
24
25 ;;; Code:
26
27 (require 'ert)
28 (require 'avy)
29
30 (ert-deftest avy-subdiv ()
31 (should
32 (equal (avy-subdiv 5 4)
33 '(1 1 1 2)))
34 (should
35 (equal (avy-subdiv 10 4)
36 '(1 1 4 4)))
37 (should
38 (equal (avy-subdiv 16 4)
39 '(4 4 4 4)))
40 (should
41 (equal (avy-subdiv 17 4)
42 '(4 4 4 5)))
43 (should
44 (equal (avy-subdiv 27 4)
45 '(4 4 4 15)))
46 (should
47 (equal (avy-subdiv 50 4)
48 '(4 14 16 16)))
49 (should
50 (equal (avy-subdiv 65 4)
51 '(16 16 16 17))))
52
53 (ert-deftest avy-tree ()
54 (should
55 (equal
56 (avy-tree '(0 1 2 3 4 5 6 7 8 9 10)
57 '(?a ?s ?d ?f ?g ?h ?j ?k ?l))
58 '((97 leaf . 0)
59 (115 leaf . 1)
60 (100 leaf . 2)
61 (102 leaf . 3)
62 (103 leaf . 4)
63 (104 leaf . 5)
64 (106 leaf . 6)
65 (107 leaf . 7)
66 (108 (97 leaf . 8)
67 (115 leaf . 9)
68 (100 leaf . 10))))))