You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
128 lines
2.1 KiB
128 lines
2.1 KiB
7 years ago
|
;; Tests for rst-imenu-create-index -*- lexical-binding: t -*-
|
||
|
|
||
|
(add-to-list 'load-path ".")
|
||
|
(load "init" nil t)
|
||
|
(init-rst-ert t)
|
||
|
|
||
|
(ert-deftest imenu-asserts ()
|
||
|
"Check some assertions."
|
||
|
(should (equal ert-Buf-point-char "\^@"))
|
||
|
(should (equal ert-Buf-mark-char "\^?"))
|
||
|
)
|
||
|
|
||
|
(ert-deftest rst-imenu-create-index ()
|
||
|
"Tests for `rst-imenu-create-index'."
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
"
|
||
|
t
|
||
|
nil))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
Some normal text.
|
||
|
"
|
||
|
t
|
||
|
nil))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
Header
|
||
|
======"
|
||
|
t
|
||
|
'(("=Header" . 2))))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
============
|
||
|
Indented
|
||
|
============"
|
||
|
t
|
||
|
'(("=Indented=" . 15))))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
~~~~~~~~~~~~~~
|
||
|
Over and under
|
||
|
~~~~~~~~~~~~~~"
|
||
|
t
|
||
|
'(("~Over and under~" . 17))))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
Header
|
||
|
======
|
||
|
|
||
|
Subheader
|
||
|
---------"
|
||
|
t
|
||
|
'(("=Header"
|
||
|
("=Header" . 2)
|
||
|
("-Subheader" . 17)))))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
Header
|
||
|
======
|
||
|
|
||
|
Subheader
|
||
|
---------
|
||
|
|
||
|
With space
|
||
|
----------"
|
||
|
t
|
||
|
'(("=Header"
|
||
|
("=Header" . 2)
|
||
|
("-Subheader" . 17)
|
||
|
("-With space" . 38)))))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
Header
|
||
|
======
|
||
|
|
||
|
Subheader
|
||
|
---------
|
||
|
|
||
|
With space
|
||
|
----------
|
||
|
|
||
|
Top level again
|
||
|
==============="
|
||
|
t
|
||
|
'(("=Header"
|
||
|
("=Header" . 2)
|
||
|
("-Subheader" . 17)
|
||
|
("-With space" . 38))
|
||
|
("=Top level again" . 61))))
|
||
|
(should (ert-equal-buffer-return
|
||
|
'(rst-imenu-create-index)
|
||
|
"
|
||
|
Header
|
||
|
======
|
||
|
|
||
|
Subheader
|
||
|
---------
|
||
|
|
||
|
With space
|
||
|
----------
|
||
|
|
||
|
Sub sub
|
||
|
~~~~~~~
|
||
|
|
||
|
Top level again
|
||
|
==============="
|
||
|
t
|
||
|
'(("=Header"
|
||
|
("=Header" . 2)
|
||
|
("-Subheader" . 17)
|
||
|
("-With space"
|
||
|
("-With space" . 38)
|
||
|
("~Sub sub" . 61)))
|
||
|
("=Top level again" . 78))))
|
||
|
)
|
||
|
|
||
|
;; FIXME: Test missing intermediate sections.
|
||
|
;; FIXME: Test document titles.
|