<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/test/test-lib.el, branch 0.40_rc1</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.40_rc1</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.40_rc1'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2025-02-25T11:25:59Z</updated>
<entry>
<title>test/emacs: add workaround for Emacs 30 pp changes</title>
<updated>2025-02-25T11:25:59Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2025-02-25T11:25:59Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e3d4721b1ba4836c7646e057b50123fe994652eb'/>
<id>urn:sha1:e3d4721b1ba4836c7646e057b50123fe994652eb</id>
<content type='text'>
This relies on the fact that setting pp-default-function has no effect
for Emacs &lt;30.
</content>
</entry>
<entry>
<title>test: minimize impact of native compilation.</title>
<updated>2023-08-26T10:45:36Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2023-08-26T10:45:36Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=115d4d69ebbab213baae672ac4e81947877f364b'/>
<id>urn:sha1:115d4d69ebbab213baae672ac4e81947877f364b</id>
<content type='text'>
Native compilation is kindof useless in the test suite because we
throw away the cache after every subtest.  The test suite could in
principle share an eln cache within a given test file; for now try to
minimize the amount of native-compilation. There is an intermittent
bug where emacs loses track of its default-directory; I suspect (but
have no proof) that bug is related to native compilation and/or race
conditions. This patch seems to prevent that bug (or at least reduce
its frequency).
</content>
</entry>
<entry>
<title>test/emacs: adapt to breaking change in Gnus defaults</title>
<updated>2023-08-20T17:32:02Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2023-08-20T17:32:02Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=1719b9e568fb944ffb91126b164a18a30a415d0a'/>
<id>urn:sha1:1719b9e568fb944ffb91126b164a18a30a415d0a</id>
<content type='text'>
As of Emacs 29.1, In-Reply-To is in the default value for
message-hidden-headers. We actually want to see that in the test
suite, so remove it again. To future proof the tests, fix a default
value for message-hidden-headers specifically for the test suite.
</content>
</entry>
<entry>
<title>perf-test: allow running test_emacs from performance test suite.</title>
<updated>2022-02-25T12:38:03Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-02-12T20:27:35Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b21fa0e43371b8281b9aa8ea532088800bb37712'/>
<id>urn:sha1:b21fa0e43371b8281b9aa8ea532088800bb37712</id>
<content type='text'>
test_require_external prereq has to move to test-lib-common.sh, and
the new shell functions print_emacs_header and time_emacs are provided.

The somewhat indirect way of printing the output is to avoid the extra
"" present on string values from emacsclient.
</content>
</entry>
<entry>
<title>test/emacs: provide macro test-log-error</title>
<updated>2021-09-11T13:10:16Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-29T19:23:27Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=59d0d5a4891469f3c91dcea7448c086cc8434a7a'/>
<id>urn:sha1:59d0d5a4891469f3c91dcea7448c086cc8434a7a</id>
<content type='text'>
Because of the way emacs reports errors, a test form can crash and not
change the main buffer. To work around this, capture both signalled
errors and any other messages.
</content>
</entry>
<entry>
<title>test/emacs: test for functions in notmuch-search-result-format.</title>
<updated>2021-09-09T02:01:02Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-30T19:49:06Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=dc8262bd336f1c406e5705ec8cb5029f1bacd524'/>
<id>urn:sha1:dc8262bd336f1c406e5705ec8cb5029f1bacd524</id>
<content type='text'>
Based on the commit message in id:20210221151902.2301690-3-dme@dme.org

Add the function notmuch-test-result-flags to test-lib.el to avoid
repeating it in 3 T*.sh files.
</content>
</entry>
<entry>
<title>test: add known broken tests for notuch-{before,after}-tag-hook</title>
<updated>2021-05-15T11:31:00Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-05-08T12:11:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=a663783343cb992d132ecc18e4e4d4e37bbf12e9'/>
<id>urn:sha1:a663783343cb992d132ecc18e4e4d4e37bbf12e9</id>
<content type='text'>
These tests illustrate the bug reported in id:87v97ytd2s.fsf@fastmail.fm
</content>
</entry>
<entry>
<title>emacs: make headings outline-minor-mode compatible</title>
<updated>2021-01-13T11:10:27Z</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2021-01-10T14:00:46Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2ca941163da06aed564dab1990fb333fd7457ec2'/>
<id>urn:sha1:2ca941163da06aed564dab1990fb333fd7457ec2</id>
<content type='text'>
`outline-minor-mode' treats comments that begin with three or more
semicolons as headings.  That makes it very convenient to navigate
code and to show/hide parts of a file.

Elips libraries typically have four top-level sections, e.g.:

;;; notmuch.el --- run notmuch within emacs...
;;; Commentary:...
;;; Code:...
;;; notmuch.el ends here

In this package many libraries lack a "Commentary:" section, which is
not optimal but okay for most libraries, except major entry points.

Depending on how one chooses to look at it, the "... ends here" line
is not really a heading that begins a section, because it should never
have a "section" body (after all it marks eof).

If the file is rather short, then I left "Code:" as the only section
that contains code.  Otherwise I split the file into multiple sibling
sections.  The "Code:" section continues to contain `require' and
`declare-function' forms and other such "front matter".

If and only if I have split the code into multiple sections anyway,
then I also added an additional section named just "_" before the
`provide' form and shortly before the "...end here" line.  This
section could also be called "Back matter", but I feel it would be
distracting to be that explicit about it.  (The IMO unnecessary but
unfortunately still obligatory "... ends here" line is already
distracting enough as far as I am concerned.)

Before this commit some libraries already uses section headings, some
of them consistently.  When a library already had some headings, then
this commit often sticks to that style, even at the cost inconsistent
styling across all libraries.

A very limited number of variable and function definitions have to be
moved around because they would otherwise end up in sections they do
not belong into.

Sections, including but not limited to their heading, can and should
be further improved in the future.
</content>
</entry>
<entry>
<title>emacs: Do not abuse advice to monkey patch while testing</title>
<updated>2020-08-10T00:17:06Z</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2020-08-08T11:50:07Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=3665914f71fc7be2f537ec0ae2647f768c7f5bbe'/>
<id>urn:sha1:3665914f71fc7be2f537ec0ae2647f768c7f5bbe</id>
<content type='text'>
Use `cl-letf*' instead.
</content>
</entry>
<entry>
<title>emacs: Drop old advices that were only need for Emacs 23</title>
<updated>2020-08-10T00:16:12Z</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2020-08-08T11:50:06Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=96baa2231882e9a9025797b1f9945ba6b2751dd4'/>
<id>urn:sha1:96baa2231882e9a9025797b1f9945ba6b2751dd4</id>
<content type='text'>
</content>
</entry>
</feed>
