<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/test/notmuch-test, branch 0.40</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.40</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.40'/>
<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: use --minversion to detect GNU Parallel.</title>
<updated>2021-08-03T23:29:47Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-08-02T11:21:42Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=c966fa6439f35dd28c31fcd5c94465feef21151f'/>
<id>urn:sha1:c966fa6439f35dd28c31fcd5c94465feef21151f</id>
<content type='text'>
Based on a suggestion of Ole Tange [1].

[1]: id:CA+4vN7x6jp4HCiEybZ=5g+2X6Pa7etBFX3Bbd=UYty37gR6wEQ@mail.gmail.com
</content>
</entry>
<entry>
<title>test: aggregate-results updates</title>
<updated>2021-06-07T23:16:33Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2021-05-17T08:11:09Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6f0f83660e222cfdd05b05ad134763a7ab26f097'/>
<id>urn:sha1:6f0f83660e222cfdd05b05ad134763a7ab26f097</id>
<content type='text'>
notmuch-test will now call aggregate-results.sh with file list
that it compiles based on the test ran, and aggregate-results
will report failure is any of the test files are missing.

With this notmuch-test no longer has to exit in non-parallel
run if some test fail to write its report file -- so it works
as parallel tests in this sense.

Changed test_done() in test-lib.sh write report file in one write(2),
so there is (even) less chance it being partially written. Also,
now it writes 'total' last and aggregate-results.sh expects this
line to exist in all report files for reporting to be successful.

Added 'set -eu' to notmuch-test and modified code to work with
these settings. That makes it harder to get mistakes slipped
into committed code.
</content>
</entry>
<entry>
<title>test: hide message from moreutils parallel.</title>
<updated>2021-04-26T12:00:11Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2021-04-26T12:00:11Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=00487fa901d55427e8b7e9fb91e56a4dbbca3c76'/>
<id>urn:sha1:00487fa901d55427e8b7e9fb91e56a4dbbca3c76</id>
<content type='text'>
The argument --version confuses moreutils parallel, but this is OK,
because its confusing does not include printing "GNU"
</content>
</entry>
<entry>
<title>test: check for GNU parallel with --version options</title>
<updated>2021-04-24T23:06:41Z</updated>
<author>
<name>Tobias Backer Dirks</name>
<email>omgitsaheadcrab@gmail.com</email>
</author>
<published>2021-04-24T20:41:03Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f2b5ad28e2b7b512d66946af34dd4149d1506bf4'/>
<id>urn:sha1:f2b5ad28e2b7b512d66946af34dd4149d1506bf4</id>
<content type='text'>
The lastest versions of GNU parallel no longer make mention of GNU
within their help output. This causes the test script to mistakenly use
the moreutils parallel execution. In order to fix this, while
maintaining compatibility with previous versions of GNU parallel,
--version should be used.

Signed-off-by: Tobias Backer Dirks &lt;omgitsaheadcrab@gmail.com&gt;
</content>
</entry>
<entry>
<title>test: report summary even when aborting</title>
<updated>2019-05-26T21:55:06Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2019-05-26T15:03:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=73cebe6e7233f59ba26d9f7c05265b7776795818'/>
<id>urn:sha1:73cebe6e7233f59ba26d9f7c05265b7776795818</id>
<content type='text'>
In certain cases of test suite failure, the summary report was not
being printed.  In particular, any failure on the parallel test suite,
and any aborted test in the serialized test suite would end up hiding
the summary.

It's better to always show the summary where we can (while preserving
the return code).  If we do abort due to this high-level failure,
though, we should also announce to the user that we're doing so as
close to the end of the process as possible, to make it easier to find
the problem.

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
<entry>
<title>test: allow disabling timeout with NOTMUCH_TEST_TIMEOUT=0</title>
<updated>2019-05-25T11:26:41Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2019-05-20T23:25:35Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=fa9d8b702666adc5fe5759c352a9e8467c436804'/>
<id>urn:sha1:fa9d8b702666adc5fe5759c352a9e8467c436804</id>
<content type='text'>
To aid in diagnosing test suite tooling that interacts poorly with
coreutils' timeout, it's handy to be able to bypass it entirely.

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
<entry>
<title>test-lib.sh: colors to test output when parallel(1) is run on tty</title>
<updated>2019-05-23T11:00:31Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2019-05-08T18:51:47Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=3563079be37737aab084e957b494070eaea9c2f6'/>
<id>urn:sha1:3563079be37737aab084e957b494070eaea9c2f6</id>
<content type='text'>
Done via $COLORS_WITHOUT_TTY environment variable as passing options
to commands through parallel(1) does not look trivial.

Reorganized color checking in test-lib.sh a bit for this (perhaps
were not fully necessary but rest still an improvement):

  - color checking commands in subshell are not run before arg parsing
    (args may disable colors with --no-color)

  - [ -t 1 ] is checked before forking subshell
</content>
</entry>
<entry>
<title>tests: fail and report when a parallel build fails (or times out)</title>
<updated>2019-05-20T17:48:56Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2019-05-20T17:20:57Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=c88e03058091dcaf2699c28fffc163c3d2adcaf1'/>
<id>urn:sha1:c88e03058091dcaf2699c28fffc163c3d2adcaf1</id>
<content type='text'>
When a parallel build fails (or when it times out, if timeout is
present), the test suite should not blithely succeed.  Catch these
failures and at least report them.

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
<entry>
<title>tests: make timeout configurable with NOTMUCH_TEST_TIMEOUT (default: 2m)</title>
<updated>2019-05-20T17:48:43Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2019-05-20T17:20:56Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=73bf7e532e8388416981d9e2378d10ff04264097'/>
<id>urn:sha1:73bf7e532e8388416981d9e2378d10ff04264097</id>
<content type='text'>
The current 2 minute timeout is reasonable, but to exercise the test
suite or induce timeout failures, we might want to make it shorter.
This makes it configurable so you can run (for example):

    make check NOTMUCH_TEST_TIMEOUT=10s

We stick with the default of 2m.

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
</feed>
