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.
127 lines
2.1 KiB
127 lines
2.1 KiB
;; 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.
|
|
|