<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/test, branch 0.2</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.2</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.2'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2010-04-15T22:18:30Z</updated>
<entry>
<title>make test: Actually count and report on failures.</title>
<updated>2010-04-15T22:18:30Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T22:18:30Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=cddeaa59ab9c85ae4a09cae769b8677fd60141b8'/>
<id>urn:sha1:cddeaa59ab9c85ae4a09cae769b8677fd60141b8</id>
<content type='text'>
Hurrah---no more manual verification of that PASS column.

This means that "make test" can actually be a useful part of the
release process now, (since it will exit with non-zero status if there
are any failures).
</content>
</entry>
<entry>
<title>test: Unify all tests to use the pass_if_equal function.</title>
<updated>2010-04-15T22:09:21Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T22:09:21Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=004ed3362f7cbc46a118faf6c380da1bc5bd3f78'/>
<id>urn:sha1:004ed3362f7cbc46a118faf6c380da1bc5bd3f78</id>
<content type='text'>
Previously some tests (dump/restore) were doing ad-hoc verification of
values and their own printing of PASS/FAIL, etc. This made it
impossible to count test pass/fail rates in a single place.

The only reason these tests were written that way was because the old
execute_expecting function only worked if one could directly test the
stdout output of a notmuch command. The recent switch to pass_if_equal
means that all tests can use it.
</content>
</entry>
<entry>
<title>test: Align the PASS/FAIL column.</title>
<updated>2010-04-15T22:06:00Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T22:06:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6d16e5c7a311b6b255f59aac8747b8d441d5dd57'/>
<id>urn:sha1:6d16e5c7a311b6b255f59aac8747b8d441d5dd57</id>
<content type='text'>
Just to make things a little more pleasant to look at.
</content>
</entry>
<entry>
<title>test: Add a test for "notmuch search '*'"</title>
<updated>2010-04-15T21:48:56Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T21:06:10Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f0050f6dd2de064a650a8d89f7031f0bef9c2667'/>
<id>urn:sha1:f0050f6dd2de064a650a8d89f7031f0bef9c2667</id>
<content type='text'>
This feature was added recently and should have gotten a new test at
the time.

As this test demonstrates, the code is broken, ("notmuch search '*'
returns bogus dates of the Unix epoch for any threads where the
term "and" does not appear in any messages).
</content>
</entry>
<entry>
<title>test: Use an older date for the generated messages.</title>
<updated>2010-04-15T21:13:12Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T21:09:07Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d49eef0a3fa2fa23764d563eb74cf529f0b20934'/>
<id>urn:sha1:d49eef0a3fa2fa23764d563eb74cf529f0b20934</id>
<content type='text'>
Using a date in the current year makes the test suite fragile since
the search output will include a date of "January 05" for now, but
will start doing "2010-01-05" in the future.
</content>
</entry>
<entry>
<title>test: Remove test-message filenames from generated messages</title>
<updated>2010-04-15T21:13:12Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T21:01:54Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=9c0ae2e73e9cf705411ec26bf999a172d4e126bf'/>
<id>urn:sha1:9c0ae2e73e9cf705411ec26bf999a172d4e126bf</id>
<content type='text'>
The filenames aren't predictable (including the current directory) nor
stable from one run to the next (including the PID). This makes it
hard to predict the output from a search command that returns such a
message (such as "*").

The original goal was simply to ensure that each generated message was
distinguishable somehow. So just use the message counter instead.
</content>
</entry>
<entry>
<title>test: Disentangle execution of notmuch from the examination of the results.</title>
<updated>2010-04-15T21:13:12Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T20:44:00Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=3846c1d12c2445bc2a4d118682eb335ee90dd92e'/>
<id>urn:sha1:3846c1d12c2445bc2a4d118682eb335ee90dd92e</id>
<content type='text'>
The old execute_expecting function was doing far too much for its own
good.  One of the worst aspects of this was that it introduced
shell-quoting challengers where the caller could not easily control
the precise invocation of the command to be executed.

I personally couldn't find a way to test "notmuch search '*'" without
the shell expanding * against files in the current directory, or
having bogus quotation marks appearing in the search string,
(defeating the recognition of "*" as a special search term).

Hopefully this aspect of the test suite will be much easier to maintain now.
</content>
</entry>
<entry>
<title>test: Fix reply tests to track insignificant change in output.</title>
<updated>2010-04-15T00:17:50Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-04-15T00:17:50Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f1776f8b51013bb66eb21e64c8084ddfe73c3a5c'/>
<id>urn:sha1:f1776f8b51013bb66eb21e64c8084ddfe73c3a5c</id>
<content type='text'>
The recent fix to properly decode encoded headers made the expected
output of "notmuch reply" differ by a single space, (previously, there
were two spaces before the References: value and now there is just
one).

Fix the test suite so that these are all noted as correct results
again.
</content>
</entry>
<entry>
<title>test: Add new tests for out-of-order messages.</title>
<updated>2010-04-12T21:04:35Z</updated>
<author>
<name>James Westby</name>
<email>jw+debian@jameswestby.net</email>
</author>
<published>2010-03-13T21:27:57Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=4a9b41f1da63039a17a62a49dd1649bcf1ca5a99'/>
<id>urn:sha1:4a9b41f1da63039a17a62a49dd1649bcf1ca5a99</id>
<content type='text'>
These new tests demonstrate a bug as follows:

  Multiple messages are added to the database

  All of these message references a common parent

  The parent message does not exist in the databas

In this scenario, the messages will not be recognized as belonging to
the same thread. We consider this a bug, and the new tests treat this
as a failure.

Edited by Carl Worth &lt;cworth@cworth.org&gt;: Split these tests into their
own commit (before the fix of the bug). This lets me see the actual
failure in the test suite, before the fix is applied. Also fix the
alignment of new messages from test suite, (so that the PASS portions
all line up---which is important while we're still manually verifying
test-suite results).
</content>
</entry>
<entry>
<title>test: Fix phrase-search tests.</title>
<updated>2010-03-31T20:31:09Z</updated>
<author>
<name>Carl Worth</name>
<email>cworth@cworth.org</email>
</author>
<published>2010-03-11T17:55:06Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bf09c7d11e743cee5be8c52f6ca691668eb02a30'/>
<id>urn:sha1:bf09c7d11e743cee5be8c52f6ca691668eb02a30</id>
<content type='text'>
With some extra qutotation marks, we are now doing actual phrase
searches so these tests pass.
</content>
</entry>
</feed>
