<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/test/test-lib.sh, branch 0.39_rc2</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.39_rc2</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.39_rc2'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2023-07-21T10:41:50Z</updated>
<entry>
<title>test: support testing notmuch as installed</title>
<updated>2023-07-21T10:41:50Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2023-04-09T14:26:26Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=ec26eeaeec87781dee7dbf720103a5bc9b6bba5d'/>
<id>urn:sha1:ec26eeaeec87781dee7dbf720103a5bc9b6bba5d</id>
<content type='text'>
We put some effort into testing the built copy rather than some
installed copy. On the other hand for people like packagers, testing
the installed copy is also of interest.

When NOTMUCH_TEST_INSTALLED is set to a nonempty value, tests do not
require a built notmuch tree or running configure.

Some of the tests marked as broken when running against installed
notmuch are probably fixable.
</content>
</entry>
<entry>
<title>test: check for empty/missing files in test_expect_equal_message_body</title>
<updated>2023-07-21T10:07:43Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2023-04-09T14:26:24Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f6fcdf12da455d82a9ed0a0a33eddac60253a6e8'/>
<id>urn:sha1:f6fcdf12da455d82a9ed0a0a33eddac60253a6e8</id>
<content type='text'>
Messages can have empty bodies, but empty files are not messages.
</content>
</entry>
<entry>
<title>test: mark some tests as broken when run as root.</title>
<updated>2023-01-06T00:14:37Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2023-01-04T12:41:42Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f4dc32e71b6fbaca933e0c7edd6d08b65feed0ec'/>
<id>urn:sha1:f4dc32e71b6fbaca933e0c7edd6d08b65feed0ec</id>
<content type='text'>
File permission errors e.g., are hard to trigger as root.
</content>
</entry>
<entry>
<title>test: replace aging OpenPGP key used in the test suite</title>
<updated>2022-09-23T23:16:00Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@sequoia-pgp.org</email>
</author>
<published>2022-09-22T08:46:06Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bf8aa34324cc91a530b0b12f833f106c939f7d84'/>
<id>urn:sha1:bf8aa34324cc91a530b0b12f833f106c939f7d84</id>
<content type='text'>
This replaces the old OpenPGPv4 key that is used in the test suite
with a more modern OpenPGPv4 key.  All cryptographic artifacts in the
test suite are updated accordingly.

Having old cryptographic artifacts in the test suite presents a
problem once the old algorithms are rejected by contemporary
implementations.

For reference, this is the old key.

  sec   rsa1024 2011-02-05 [SC]
        5AEAB11F5E33DCE875DDB75B6D92612D94E46381
  uid           [ unknown] Notmuch Test Suite &lt;test_suite@notmuchmail.org&gt; (INSECURE!)
  ssb   rsa1024 2011-02-05 [E]

And this is the new key.  Note that is has the same shape, but uses
Ed25519 and Cv25519 instead of 1024-bit RSA.

  sec   ed25519 2022-09-07 [SC]
        9A3AFE6C60065A148FD4B58A7E6ABE924645CC60
  uid           [ultimate] Notmuch Test Suite (INSECURE!) &lt;test_suite@notmuchmail.org&gt;
  ssb   cv25519 2022-09-07 [E]
</content>
</entry>
<entry>
<title>CLI/show: support --duplicate for structured output</title>
<updated>2022-07-30T11:41:50Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-07-01T21:45:44Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4612f3eb3dbf16bf98ccbadef77d7a6f6361e692'/>
<id>urn:sha1:4612f3eb3dbf16bf98ccbadef77d7a6f6361e692</id>
<content type='text'>
This introduces a new mandatory key for message structures, namely
"duplicate". Per convention in devel/schemata this does _not_ increase
the format version. This means that clients are responsible for
checking that it exists, and not crashing if it does not.

The main functional change is teaching mime_node_open to understand a
'duplicate' argument.

Support for --duplicate in notmuch-reply would make sense, but we
defer it to a later commit.
</content>
</entry>
<entry>
<title>CL/git: add format version 1</title>
<updated>2022-07-07T09:56:05Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-06-23T12:30:44Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6219e7380ae34cc0c8142f4174bee3cde9bf9662'/>
<id>urn:sha1:6219e7380ae34cc0c8142f4174bee3cde9bf9662</id>
<content type='text'>
The original nmbug format (now called version 0) creates 1
subdirectory of 'tags/' per message. This causes problems for more
than (roughly) 100k messages.

Version 1 introduces 2 layers of hashed directories. This scheme was
chose to balance the number of subdirectories with the number of extra
directories (and git objects) created via hashing.

This should be upward compatible in the sense that old repositories
will continue to work with the updated notmuch-git.
</content>
</entry>
<entry>
<title>test: define and use notmuch_sexp_*_sanitize functions</title>
<updated>2022-07-05T10:03:37Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-07-01T21:45:41Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=0a3bb81d4f4cf7b4a3dd607e7a5c7a62695cb4f1'/>
<id>urn:sha1:0a3bb81d4f4cf7b4a3dd607e7a5c7a62695cb4f1</id>
<content type='text'>
These are based on the equivalent functions for json. Like those,
these are pretty simple-minded, and don't really understand the
syntax.
</content>
</entry>
<entry>
<title>test: define test_private_C</title>
<updated>2022-06-25T15:55:02Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-05-23T23:38:54Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2707c06a0fc587a68096a3ec6f054ba4f0d7e7c7'/>
<id>urn:sha1:2707c06a0fc587a68096a3ec6f054ba4f0d7e7c7</id>
<content type='text'>
When testing error handling, it is sometimes difficult to cover a
particular error path deterministically. Introduce a test function to
allow calling lower level functions directly.
</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: split variable settings to their own file</title>
<updated>2022-02-25T12:37:14Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2022-02-12T20:27:33Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=371fa28ced91e0d0036a98403fab61e9f5301ba4'/>
<id>urn:sha1:371fa28ced91e0d0036a98403fab61e9f5301ba4</id>
<content type='text'>
This allows sharing more variable settings between the (correctness)
tests and the performance-tests. Unfortunately it seems a bit tricky
to move settings to test-lib-common.sh, as that is sourced late in
test-lib.sh, and moving it earlier breaks things.
</content>
</entry>
</feed>
