Re: [PATCH v2 3/4] test: notmuch search --format=text0

Subject: Re: [PATCH v2 3/4] test: notmuch search --format=text0

Date: Sun, 16 Dec 2012 10:51:08 -0500

To: Jani Nikula, notmuch@notmuchmail.org

Cc:

From: Austin Clements


On Sun, 09 Dec 2012, Jani Nikula <jani@nikula.org> wrote:
> ---
>  test/text |   29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/test/text b/test/text
> index 428c89b..e003a66 100755
> --- a/test/text
> +++ b/test/text
> @@ -52,4 +52,33 @@ output=$(notmuch search --format=text "tëxt-search-méssage" | notmuch_search_s
>  test_expect_equal "$output" \
>  "thread:XXX   2000-01-01 [1/1] Notmuch Test Suite; text-search-utf8-body-sübjéct (inbox unread)"
>  
> +add_email_corpus
> +
> +test_begin_subtest "Search message tags: text0"
> +cat <<EOF > EXPECTED.$test_count

Other tests use just OUTPUT and EXPECTED.  Why the $test_count?  Is
there a technical reason for it?

> +attachment inbox signed unread
> +EOF
> +notmuch search --format=text0 --output=tags '*' | xargs -0 | notmuch_search_sanitize > OUTPUT.$test_count
> +test_expect_equal_file EXPECTED.$test_count OUTPUT.$test_count
> +
> +test_begin_subtest "Compare text vs. text0 for threads"
> +notmuch search --format=text --output=threads '*' | notmuch_search_sanitize > EXPECTED.$test_count
> +notmuch search --format=text0 --output=threads '*' | xargs -0 -L1 | notmuch_search_sanitize > OUTPUT.$test_count

I think it would be worth "strengthening" these tests as Mark pointed
out.  It would be easy to accidentally include a literal \n in the
output instead of calling the separator method, and this test wouldn't
catch that.  I think Mark's suggestion with tr is pretty good, since it
directly disambiguates \0 and \n in the output, while producing a
reasonable diff if things do go wrong.

> +test_expect_equal_file EXPECTED.$test_count OUTPUT.$test_count
> +
> +test_begin_subtest "Compare text vs. text0 for messages"
> +notmuch search --format=text --output=messages '*' | notmuch_search_sanitize > EXPECTED.$test_count
> +notmuch search --format=text0 --output=messages '*' | xargs -0 -L1 | notmuch_search_sanitize > OUTPUT.$test_count
> +test_expect_equal_file EXPECTED.$test_count OUTPUT.$test_count
> +
> +test_begin_subtest "Compare text vs. text0 for files"
> +notmuch search --format=text --output=files '*' | notmuch_search_sanitize > EXPECTED.$test_count
> +notmuch search --format=text0 --output=files '*' | xargs -0 -L1 | notmuch_search_sanitize > OUTPUT.$test_count
> +test_expect_equal_file EXPECTED.$test_count OUTPUT.$test_count
> +
> +test_begin_subtest "Compare text vs. text0 for tags"
> +notmuch search --format=text --output=tags '*' | notmuch_search_sanitize > EXPECTED.$test_count
> +notmuch search --format=text0 --output=tags '*' | xargs -0 -L1 | notmuch_search_sanitize > OUTPUT.$test_count
> +test_expect_equal_file EXPECTED.$test_count OUTPUT.$test_count
> +
>  test_done
> -- 
> 1.7.10.4
>
> _______________________________________________
> notmuch mailing list
> notmuch@notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch

Thread: