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.
929 lines
12 KiB
929 lines
12 KiB
;; Tests for rst-adjust -*- lexical-binding: t -*- |
|
|
|
(add-to-list 'load-path ".") |
|
(load "init" nil t) |
|
(init-rst-ert t) |
|
|
|
(ert-deftest adjust-section-asserts () |
|
"Check some assertions." |
|
(should (equal ert-Buf-point-char "\^@")) |
|
(should (equal ert-Buf-mark-char "\^?")) |
|
) |
|
|
|
(ert-deftest rst-adjust-no-adornment () |
|
"Tests for `rst-adjust' with no adornment around point." |
|
(let ( ;; Set customizable variables to defined values |
|
(rst-new-adornment-down t) |
|
(rst-default-indent 3) |
|
(rst-preferred-adornments '((?= over-and-under 1) |
|
(?= simple 0) |
|
(?- simple 0) |
|
(?~ simple 0) |
|
(?+ simple 0) |
|
(?` simple 0) |
|
(?# simple 0) |
|
(?@ simple 0)))) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Some Title\^@ |
|
|
|
" |
|
" |
|
============ |
|
Some Title |
|
============ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Some Title |
|
\^@ |
|
" |
|
" |
|
============ |
|
Some Title |
|
============ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Some Tit\^@le |
|
|
|
" |
|
" |
|
============ |
|
Some Title |
|
============ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
\^@Some Title |
|
|
|
" |
|
" |
|
============ |
|
Some Title |
|
============ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Some Title\^@ |
|
|
|
Other Title |
|
----------- |
|
|
|
Other Title2 |
|
~~~~~~~~~~~~ |
|
|
|
" |
|
" |
|
============ |
|
Some Title |
|
============ |
|
|
|
Other Title |
|
----------- |
|
|
|
Other Title2 |
|
~~~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
Some Title\^@ |
|
|
|
" |
|
" |
|
Some Title |
|
========== |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Some Title\^@ |
|
|
|
" |
|
" |
|
================ |
|
Some Title |
|
================ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
Some Title\^@ |
|
|
|
" |
|
" |
|
Some Title |
|
========== |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title\^@ |
|
|
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title |
|
~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title\^@ |
|
|
|
Next Title |
|
~~~~~~~~~~ |
|
|
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title |
|
~~~~~~~~~~ |
|
|
|
Next Title |
|
~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title\^@ |
|
|
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
~~~~~~~~~~ |
|
Some Title |
|
~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title\^@ |
|
|
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
~~~~~~~~~~~~~~ |
|
Some Title |
|
~~~~~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title\^@ |
|
|
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title |
|
~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust -) |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title\^@ |
|
|
|
Next Title |
|
~~~~~~~~~~ |
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
|
|
Some Title |
|
---------- |
|
|
|
Next Title |
|
~~~~~~~~~~ |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Document Title\^@ |
|
|
|
" |
|
" |
|
================ |
|
Document Title\^@ |
|
================ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
|
|
Document Title\^@ |
|
" |
|
" |
|
|
|
================ |
|
Document Title\^@ |
|
================ |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
|
|
Document Title\^@" |
|
" |
|
|
|
================ |
|
Document Title\^@ |
|
================ |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Document Title |
|
============== |
|
Subtitle\^@ |
|
|
|
" |
|
" |
|
Document Title |
|
============== |
|
Subtitle\^@ |
|
-------- |
|
|
|
" |
|
t)) |
|
)) |
|
|
|
(ert-deftest rst-adjust-incomplete () |
|
"Tests for `rst-adjust' with incomplete adornment." |
|
(let ( ;; Set customizable variables to defined values |
|
(rst-default-indent 3) |
|
(rst-preferred-adornments '((?= over-and-under 1) |
|
(?= simple 0) |
|
(?- simple 0) |
|
(?~ simple 0) |
|
(?+ simple 0) |
|
(?` simple 0) |
|
(?# simple 0) |
|
(?@ simple 0)))) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title\^@ |
|
---------- |
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
----------\^@ |
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
-\^@ |
|
" |
|
" |
|
Previous Title |
|
- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
--\^@ |
|
" |
|
" |
|
Previous Title |
|
-- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
---\^@ |
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
Previous Title |
|
------------------\^@ |
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
---------------- |
|
Previous Title |
|
----------\^@ |
|
" |
|
" |
|
---------------- |
|
Previous Title |
|
---------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
----------\^@ |
|
Previous Title |
|
---------------- |
|
" |
|
" |
|
---------------- |
|
Previous Title |
|
---------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
---------- |
|
Previous Title\^@ |
|
----- |
|
" |
|
" |
|
---------------- |
|
Previous Title |
|
---------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
Previous Title |
|
----------\^@ |
|
" |
|
" |
|
-------------- |
|
Previous Title |
|
-------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
---------------- |
|
Previous Title\^@ |
|
-------- |
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
--------\^@ |
|
Previous Title |
|
---------------- |
|
" |
|
" |
|
Previous Title |
|
-------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
"--------\^@ |
|
Previous Title |
|
---------------- |
|
" |
|
"---------------- |
|
Previous Title |
|
---------------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
"======= |
|
Document Title\^@ |
|
============== |
|
" |
|
"============== |
|
Document Title |
|
============== |
|
" |
|
t)) |
|
)) |
|
|
|
(ert-deftest rst-adjust-toggle () |
|
"Tests for `rst-adjust' toggling complete adornment." |
|
(let ( ;; Set customizable variables to defined values |
|
(rst-default-indent 3) |
|
(rst-preferred-adornments '((?= over-and-under 1) |
|
(?= simple 0) |
|
(?- simple 0) |
|
(?~ simple 0) |
|
(?+ simple 0) |
|
(?` simple 0) |
|
(?# simple 0) |
|
(?@ simple 0)))) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
SubTitle\^@ |
|
~~~~~~~~ |
|
|
|
" |
|
" |
|
~~~~~~~~~~~~~~ |
|
SubTitle |
|
~~~~~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust 1) |
|
" |
|
~~~~~~~~~~ |
|
SubTitle\^@ |
|
~~~~~~~~~~ |
|
|
|
" |
|
" |
|
SubTitle |
|
~~~~~~~~ |
|
|
|
" |
|
t)) |
|
)) |
|
|
|
(ert-deftest rst-adjust-rotate-up () |
|
"Tests for `rst-adjust' rotating complete adornment upwards." |
|
(let ( ;; Set customizable variables to defined values |
|
(rst-default-indent 3) |
|
(rst-preferred-adornments '((?= over-and-under 1) |
|
(?= simple 0) |
|
(?- simple 0) |
|
(?~ simple 0) |
|
(?+ simple 0) |
|
(?` simple 0) |
|
(?# simple 0) |
|
(?@ simple 0)))) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
-------- |
|
|
|
My Title\^@ |
|
-------- |
|
|
|
After Title |
|
~~~~~~~~~~~ |
|
|
|
" |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
-------- |
|
|
|
========== |
|
My Title |
|
========== |
|
|
|
After Title |
|
~~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
========== |
|
My Title\^@ |
|
========== |
|
|
|
" |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title |
|
-------- |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title\^@ |
|
-------- |
|
|
|
After Title |
|
----------- |
|
" |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title |
|
======== |
|
|
|
After Title |
|
----------- |
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title\^@ |
|
-------- |
|
" |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title |
|
======== |
|
" |
|
t)) |
|
;; docutils-Bugs #2972588 |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
============== |
|
Document Title |
|
============== |
|
|
|
Subtitle |
|
======== |
|
|
|
.. contents:: |
|
:depth: 2 |
|
.. |
|
1 Section 1 |
|
2 Section 2 |
|
|
|
Section 1\^@ |
|
--------- |
|
|
|
Section 2 |
|
--------- |
|
" |
|
" |
|
============== |
|
Document Title |
|
============== |
|
|
|
Subtitle |
|
======== |
|
|
|
.. contents:: |
|
:depth: 2 |
|
.. |
|
1 Section 1 |
|
2 Section 2 |
|
|
|
Section 1\^@ |
|
========= |
|
|
|
Section 2 |
|
--------- |
|
" |
|
t)) |
|
)) |
|
|
|
(ert-deftest rst-adjust-rotate-down () |
|
"Tests for `rst-adjust' rotating complete adornment downwards." |
|
(let ( ;; Set customizable variables to defined values |
|
(rst-default-indent 3) |
|
(rst-preferred-adornments '((?= over-and-under 1) |
|
(?= simple 0) |
|
(?- simple 0) |
|
(?~ simple 0) |
|
(?+ simple 0) |
|
(?` simple 0) |
|
(?# simple 0) |
|
(?@ simple 0)))) |
|
(should (ert-equal-buffer |
|
'(rst-adjust -) |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
-------- |
|
|
|
My Title\^@ |
|
-------- |
|
|
|
After Title |
|
~~~~~~~~~~~ |
|
|
|
" |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
-------- |
|
|
|
My Title |
|
~~~~~~~~ |
|
|
|
After Title |
|
~~~~~~~~~~~ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust -) |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title\^@ |
|
======== |
|
|
|
" |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title |
|
-------- |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust -) |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
My Title\^@ |
|
-------- |
|
|
|
" |
|
" |
|
================ |
|
Document Title |
|
================ |
|
|
|
SubTitle |
|
======== |
|
|
|
========== |
|
My Title |
|
========== |
|
|
|
" |
|
t)) |
|
)) |
|
|
|
(ert-deftest rst-adjust-adjoined () |
|
"Tests for `rst-adjust' rotating complete adornment adjoined to each other." |
|
(let ( ;; Set customizable variables to defined values |
|
(rst-default-indent 3) |
|
(rst-preferred-adornments '((?= over-and-under 1) |
|
(?= simple 0) |
|
(?- simple 0) |
|
(?~ simple 0) |
|
(?+ simple 0) |
|
(?` simple 0) |
|
(?# simple 0) |
|
(?@ simple 0)))) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
"============== |
|
Document Title\^@ |
|
============== |
|
Subtitle |
|
======== |
|
|
|
" |
|
"Document Title\^@ |
|
============== |
|
Subtitle |
|
======== |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
============== |
|
Document Title\^@ |
|
============== |
|
Subtitle |
|
======== |
|
|
|
" |
|
" |
|
Document Title\^@ |
|
============== |
|
Subtitle |
|
======== |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
============== |
|
Document Title |
|
============== |
|
=============== |
|
Document Title2\^@ |
|
=============== |
|
|
|
" |
|
" |
|
============== |
|
Document Title |
|
============== |
|
Document Title2 |
|
=============== |
|
|
|
" |
|
t)) |
|
)) |
|
|
|
(ert-deftest rst-adjust-special () |
|
"Tests for `rst-adjust' for special situations." |
|
(let ( ;; Set customizable variables to defined values |
|
(rst-new-adornment-down t) |
|
(rst-default-indent 3) |
|
(rst-preferred-adornments '((?= over-and-under 1) |
|
(?= simple 0) |
|
(?- simple 0) |
|
(?~ simple 0) |
|
(?+ simple 0) |
|
(?` simple 0) |
|
(?# simple 0) |
|
(?@ simple 0))) |
|
;; Make sure the region is active. |
|
(transient-mark-mode t)) |
|
;; Switch to `rst-ajust-region'. |
|
(should (ert-equal-buffer |
|
'(rst-adjust) |
|
" |
|
\^? |
|
Some Title |
|
========== |
|
\^@ |
|
" |
|
" |
|
|
|
============ |
|
Some Title |
|
============ |
|
|
|
" |
|
t)) |
|
(should (ert-equal-buffer |
|
'(rst-adjust -) |
|
" |
|
\^? |
|
Some Title |
|
========== |
|
\^@ |
|
" |
|
" |
|
|
|
============ |
|
Some Title |
|
============ |
|
|
|
" |
|
t)) |
|
))
|
|
|