[PATCH 1/3] test: fix count test

Jani Nikula jani at nikula.org
Wed Dec 5 00:05:00 PST 2012


On Wed, 05 Dec 2012, Michal Nazarewicz <mina86 at mina86.com> wrote:
> On Tue, Dec 04 2012, Jani Nikula wrote:
>> The quoting for ${SEARCH} is broken when it's supposed to be '*', and
>
> Why is it broken?  It does not appear to be broken to me and in fact the
> test passes.

This is exactly why nobody noticed before. It looks all right and the
test passes...

>> it seems tricky to get it right. Just drop the variable and use '*'
>> directly. Before this, none of the messages ever matched, and the test
>> was comparing zeros.

...but the query does not find anything, and the test compares zero
results to zero results. Please try this patch, which should pass if
everything were all right:

diff --git a/test/count b/test/count
index 300b171..ecae40e 100755
--- a/test/count
+++ b/test/count
@@ -6,6 +6,11 @@ add_email_corpus
 
 SEARCH="\"*\""
 
+test_begin_subtest "check the query"
+test_expect_equal \
+    "`notmuch count ${SEARCH}`" \
+    "`notmuch count '*'`"
+
 test_begin_subtest "message count is the default for notmuch count"
 test_expect_equal \
     "`notmuch search --output=messages ${SEARCH} | wc -l`" \

-- 

At least for me this produces:

 FAIL   check the query
 --- count.1.expected   2012-12-05 08:01:09.004751327 +0000
 +++ count.1.output     2012-12-05 08:01:09.004751327 +0000
 @@ -1 +1 @@
 -52
 +0

And because it seems to be really hard to get the quoting right, and
keep it that way, I think it's more robust just to s/${SEARCH}/'*'/.


BR,
Jani.


>> ---
>>  test/count |   23 ++++++++++-------------
>>  1 file changed, 10 insertions(+), 13 deletions(-)
>>
>> diff --git a/test/count b/test/count
>> index 300b171..8e587ff 100755
>> --- a/test/count
>> +++ b/test/count
>> @@ -4,37 +4,34 @@ test_description='"notmuch count" for messages and threads'
>>  
>>  add_email_corpus
>>  
>> -SEARCH="\"*\""
>> -
>>  test_begin_subtest "message count is the default for notmuch count"
>>  test_expect_equal \
>> -    "`notmuch search --output=messages ${SEARCH} | wc -l`" \
>> -    "`notmuch count ${SEARCH}`"
>> +    "`notmuch search --output=messages '*' | wc -l`" \
>> +    "`notmuch count '*'`"
>>  
>>  test_begin_subtest "message count with --output=messages"
>>  test_expect_equal \
>> -    "`notmuch search --output=messages ${SEARCH} | wc -l`" \
>> -    "`notmuch count --output=messages ${SEARCH}`"
>> +    "`notmuch search --output=messages '*' | wc -l`" \
>> +    "`notmuch count --output=messages '*'`"
>>  
>>  test_begin_subtest "thread count with --output=threads"
>>  test_expect_equal \
>> -    "`notmuch search --output=threads ${SEARCH} | wc -l`" \
>> -    "`notmuch count --output=threads ${SEARCH}`"
>> +    "`notmuch search --output=threads '*' | wc -l`" \
>> +    "`notmuch count --output=threads '*'`"
>>  
>>  test_begin_subtest "thread count is the default for notmuch search"
>>  test_expect_equal \
>> -    "`notmuch search ${SEARCH} | wc -l`" \
>> -    "`notmuch count --output=threads ${SEARCH}`"
>> +    "`notmuch search '*' | wc -l`" \
>> +    "`notmuch count --output=threads '*'`"
>>  
>> -SEARCH="from:cworth and not from:cworth"
>>  test_begin_subtest "count with no matching messages"
>>  test_expect_equal \
>>      "0" \
>> -    "`notmuch count --output=messages ${SEARCH}`"
>> +    "`notmuch count --output=messages from:cworth and not from:cworth`"
>>  
>>  test_begin_subtest "count with no matching threads"
>>  test_expect_equal \
>>      "0" \
>> -    "`notmuch count --output=threads ${SEARCH}`"
>> +    "`notmuch count --output=threads from:cworth and not from:cworth`"
>>  
>>  test_done
>
> -- 
> Best regards,                                         _     _
> .o. | Liege of Serenely Enlightened Majesty of      o' \,=./ `o
> ..o | Computer Science,  Michał “mina86” Nazarewicz    (o o)
> ooo +----<email/xmpp: mpn at google.com>--------------ooO--(_)--Ooo--


More information about the notmuch mailing list