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.
583 lines
10 KiB
583 lines
10 KiB
;; Tests for functions around filling -*- lexical-binding: t -*- |
|
|
|
(add-to-list 'load-path ".") |
|
(load "init" nil t) |
|
(init-rst-ert t) |
|
|
|
(ert-deftest fill-asserts () |
|
"Check some assertions." |
|
(should (equal ert-Buf-point-char "\^@")) |
|
(should (equal ert-Buf-mark-char "\^?")) |
|
) |
|
|
|
(defun auto-fill () |
|
"Wrapper to do auto fill." |
|
(let ((fc fill-column)) |
|
(rst-mode) |
|
(setq fill-column fc) |
|
(auto-fill-mode 1) |
|
(funcall auto-fill-function))) |
|
|
|
(ert-deftest auto-fill () |
|
"Tests for auto fill." |
|
(let ((rst-indent-width 2) |
|
(rst-indent-field 2) |
|
(rst-indent-literal-normal 3) |
|
(rst-indent-literal-minimized 2) |
|
(rst-indent-comment 3) |
|
(fill-column 20)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
* This is a test with a fill column of 20\^@" |
|
" |
|
* This is a test |
|
with a fill column |
|
of 20\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
* This is a test |
|
with a fill column of 20\^@" |
|
" |
|
* This is a test |
|
with a fill column |
|
of 20\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
:Field: Does this work for fields?\^@" |
|
" |
|
:Field: Does this |
|
work for |
|
fields?\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
:Field: Does this |
|
work for fields?\^@" |
|
" |
|
:Field: Does this |
|
work for |
|
fields?\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
.. dir:: Yes, quite fine\^@" |
|
" |
|
.. dir:: Yes, quite |
|
fine\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
.. dir:: Yes, quite fine\^@ |
|
:f: Field" |
|
" |
|
.. dir:: Yes, quite |
|
fine\^@ |
|
:f: Field" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
.. |s| r:: Dir ectives had problems\^@" |
|
" |
|
.. |s| r:: Dir |
|
ectives |
|
had |
|
problems\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
.. |s| r:: Dir |
|
ectives |
|
had problems\^@" |
|
" |
|
.. |s| r:: Dir |
|
ectives |
|
had |
|
problems\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
.. [CIT] X cit is citations are also filled\^@" |
|
" |
|
.. [CIT] X cit is |
|
citations |
|
are also |
|
filled\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
.. [CIT] X cit is |
|
citations |
|
are also filled\^@" |
|
" |
|
.. [CIT] X cit is |
|
citations |
|
are also |
|
filled\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
.. Comments should also fill nicely\^@" |
|
" |
|
.. Comments should |
|
also fill nicely\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
Normal text should also fill as expected\^@" |
|
" |
|
Normal text should |
|
also fill as |
|
expected\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
Normal text should also fill as expected\^@" |
|
" |
|
Normal text should |
|
also fill as |
|
expected\^@" |
|
)) |
|
(should (ert-equal-buffer |
|
'(auto-fill) |
|
" |
|
Normal text should also fill \^@as expected" |
|
" |
|
Normal text should |
|
also fill \^@as expected" |
|
)) |
|
)) |
|
|
|
(defun explicit-fill () |
|
"Wrapper for `fill-paragraph'." |
|
(let ((fc fill-column)) |
|
(rst-mode) |
|
(setq fill-column fc) |
|
(fill-paragraph) |
|
(untabify (point-min) (point-max)))) |
|
|
|
(ert-deftest fill-paragraph () |
|
"Tests for `fill-paragraph'." |
|
(let ((rst-indent-width 2) |
|
(rst-indent-field 2) |
|
(rst-indent-literal-normal 3) |
|
(rst-indent-literal-minimized 2) |
|
(rst-indent-comment 3) |
|
(fill-column 20)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
* This is a test with a fill column of 20\^@ |
|
" |
|
" |
|
* This is a test |
|
with a fill column |
|
of 20\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
* This is a test \^@with a fill column |
|
of 20 |
|
" |
|
" |
|
* This is a test |
|
\^@with a fill column |
|
of 20 |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
:Field: Does this work for fields?\^@ |
|
" |
|
" |
|
:Field: Does this |
|
work for |
|
fields?\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
:Field: Does this work\^@ for |
|
fields? |
|
" |
|
" |
|
:Field: Does this |
|
work\^@ for |
|
fields? |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
.. dir:: Yes, quite fine\^@ |
|
" |
|
" |
|
.. dir:: Yes, quite |
|
fine\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
\^@.. dir:: Yes, quite |
|
fine |
|
" |
|
" |
|
\^@.. dir:: Yes, quite |
|
fine |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
.. dir:: Yes, quite fine\^@ |
|
:f: Field |
|
" |
|
" |
|
.. dir:: Yes, quite |
|
fine\^@ |
|
:f: Field |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
.. [CIT] X cit is citations are also filled\^@ |
|
" |
|
" |
|
.. [CIT] X cit is |
|
citations |
|
are also |
|
filled\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
.. [CIT] X cit is |
|
citations are also filled\^@ |
|
" |
|
" |
|
.. [CIT] X cit is |
|
citations are |
|
also filled\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
.. [CIT] X cit is |
|
citations are also filled\^@ |
|
" |
|
" |
|
.. [CIT] X cit is |
|
citations are |
|
also filled\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
.. |s| r:: Dir ectives had problems\^@ |
|
" |
|
" |
|
.. |s| r:: Dir |
|
ectives |
|
had |
|
problems\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
\^@.. |s| r:: Dir ectives had problems |
|
" |
|
" |
|
\^@.. |s| r:: Dir |
|
ectives |
|
had |
|
problems |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
.. |s| r:: Dir |
|
ectives had problems\^@ |
|
" |
|
" |
|
.. |s| r:: Dir |
|
ectives had |
|
problems\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
Normal \^@text should also fill as expected |
|
" |
|
" |
|
Normal \^@text should |
|
also fill as |
|
expected |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
\^@Normal text should also fill as expected |
|
" |
|
" |
|
\^@Normal text should |
|
also fill as |
|
expected |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
Normal text should also fill as expected\^@ |
|
" |
|
" |
|
Normal text should |
|
also fill as |
|
expected\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
Normal text should also fill as expected |
|
|
|
Normal text should also fill as expected\^@ |
|
" |
|
" |
|
Normal text should also fill as expected |
|
|
|
Normal text should |
|
also fill as |
|
expected\^@ |
|
" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
\^@Normal text should |
|
also fill as |
|
expected |
|
" |
|
" |
|
\^@Normal text should |
|
also fill as |
|
expected |
|
" |
|
)) |
|
)) |
|
|
|
(ert-deftest fill-paragraph-fixme () |
|
"Tests for `fill-paragraph'." |
|
:expected-result :failed |
|
(let ((rst-indent-width 2) |
|
(rst-indent-field 2) |
|
(rst-indent-literal-normal 3) |
|
(rst-indent-literal-minimized 2) |
|
(rst-indent-comment 3) |
|
(fill-column 20)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill) |
|
" |
|
\^@Normal text should |
|
also fill as |
|
expected |
|
" |
|
" |
|
\^@Normal text should |
|
also fill as |
|
expected |
|
" |
|
)) |
|
)) |
|
|
|
(defun explicit-fill-region () |
|
"Wrapper for `fill-region'." |
|
(let ((fc fill-column)) |
|
(rst-mode) |
|
(setq fill-column fc) |
|
(call-interactively 'fill-region) |
|
(untabify (point-min) (point-max)))) |
|
|
|
(ert-deftest fill-region () |
|
"Tests for `fill-region'." |
|
(let ((rst-indent-width 2) |
|
(rst-indent-field 2) |
|
(rst-indent-literal-normal 3) |
|
(rst-indent-literal-minimized 2) |
|
(rst-indent-comment 3) |
|
(fill-column 20)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill-region) |
|
"\^@ |
|
* This is a test with a fill column of 20 |
|
|
|
* This is a test with a fill column |
|
of 20 |
|
|
|
:Field: Does this work for fields? |
|
|
|
:Field: Does this work for |
|
fields? |
|
|
|
.. dir:: Yes, quite fine |
|
|
|
.. dir:: Yes, quite |
|
fine |
|
|
|
.. dir:: Yes, quite fine |
|
:f: Field for a directive |
|
|
|
.. [CIT] X cit is citations are also filled |
|
|
|
.. |s| r:: Dir ectives had problems |
|
|
|
.. |s| r:: Dir ectives had problems |
|
|
|
Normal text should also fill as expected |
|
|
|
Normal text should also fill as expected |
|
\^?" |
|
"\^@ |
|
* This is a test |
|
with a fill column |
|
of 20 |
|
|
|
* This is a test |
|
with a fill column |
|
of 20 |
|
|
|
:Field: Does this |
|
work for |
|
fields? |
|
|
|
:Field: Does this |
|
work for |
|
fields? |
|
|
|
.. dir:: Yes, quite |
|
fine |
|
|
|
.. dir:: Yes, quite |
|
fine |
|
|
|
.. dir:: Yes, quite |
|
fine |
|
:f: Field for a |
|
directive |
|
|
|
.. [CIT] X cit is |
|
citations |
|
are also |
|
filled |
|
|
|
.. |s| r:: Dir |
|
ectives |
|
had |
|
problems |
|
|
|
.. |s| r:: Dir |
|
ectives |
|
had |
|
problems |
|
|
|
Normal text should |
|
also fill as |
|
expected |
|
|
|
Normal text should |
|
also fill as |
|
expected |
|
\^?" |
|
)) |
|
(should (ert-equal-buffer |
|
'(explicit-fill-region) |
|
"\^@ |
|
* This is a test with a fill column of 20 |
|
* This is a test with a fill column |
|
of 20 |
|
:Field: Does this work for fields? |
|
:Field: Does this work for |
|
fields? |
|
.. dir:: Yes, quite fine |
|
.. dir:: Yes, quite |
|
fine |
|
.. dir:: Yes, quite fine |
|
:f: Field for a directive |
|
.. [CIT] X cit is citations are also filled |
|
.. |s| r:: Dir ectives had problems |
|
.. |s| r:: Dir ectives had problems |
|
|
|
Normal text should also fill as expected |
|
|
|
Normal text should also fill as expected |
|
\^?" |
|
"\^@ |
|
* This is a test |
|
with a fill column |
|
of 20 |
|
* This is a test |
|
with a fill column |
|
of 20 |
|
:Field: Does this |
|
work for |
|
fields? |
|
:Field: Does this |
|
work for |
|
fields? |
|
.. dir:: Yes, quite |
|
fine |
|
.. dir:: Yes, quite |
|
fine |
|
.. dir:: Yes, quite |
|
fine |
|
:f: Field for a |
|
directive |
|
.. [CIT] X cit is |
|
citations |
|
are also |
|
filled |
|
.. |s| r:: Dir |
|
ectives |
|
had |
|
problems |
|
.. |s| r:: Dir |
|
ectives |
|
had |
|
problems |
|
|
|
Normal text should |
|
also fill as |
|
expected |
|
|
|
Normal text should |
|
also fill as |
|
expected |
|
\^?" |
|
)) |
|
))
|
|
|