From a28142a313412c52c2859adbad21cb79383170f2 Mon Sep 17 00:00:00 2001 From: Dmitry Kurochkin Date: Mon, 20 Feb 2012 16:25:05 +0400 Subject: [PATCH] Re: [PATCH v2 4/4] test: emacs: new test "notmuch-search: change tags of all matching messages" --- 4b/5bafb54620fcad2f3c6ab536a457d36e3085b7 | 145 ++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 4b/5bafb54620fcad2f3c6ab536a457d36e3085b7 diff --git a/4b/5bafb54620fcad2f3c6ab536a457d36e3085b7 b/4b/5bafb54620fcad2f3c6ab536a457d36e3085b7 new file mode 100644 index 000000000..1e2c33b14 --- /dev/null +++ b/4b/5bafb54620fcad2f3c6ab536a457d36e3085b7 @@ -0,0 +1,145 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id AADE0431FB6 + for ; Mon, 20 Feb 2012 04:26:33 -0800 (PST) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: -0.799 +X-Spam-Level: +X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5 + tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, + FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id DTScGhMkz8ua for ; + Mon, 20 Feb 2012 04:26:29 -0800 (PST) +Received: from mail-bk0-f53.google.com (mail-bk0-f53.google.com + [209.85.214.53]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) + (No client certificate requested) + by olra.theworths.org (Postfix) with ESMTPS id 9FB52431FAF + for ; Mon, 20 Feb 2012 04:26:29 -0800 (PST) +Received: by bkcit16 with SMTP id it16so5126688bkc.26 + for ; Mon, 20 Feb 2012 04:26:28 -0800 (PST) +Received-SPF: pass (google.com: domain of dmitry.kurochkin@gmail.com + designates 10.205.124.15 as permitted sender) + client-ip=10.205.124.15; +Authentication-Results: mr.google.com; spf=pass (google.com: domain of + dmitry.kurochkin@gmail.com designates 10.205.124.15 as + permitted sender) smtp.mail=dmitry.kurochkin@gmail.com; + dkim=pass header.i=dmitry.kurochkin@gmail.com +Received: from mr.google.com ([10.205.124.15]) + by 10.205.124.15 with SMTP id gm15mr11232888bkc.63.1329740788314 + (num_hops = 1); Mon, 20 Feb 2012 04:26:28 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; + h=from:to:subject:in-reply-to:references:user-agent:date:message-id + :mime-version:content-type; + bh=u3g6yl/GdPPbZQJXPYaO8ekHMK5bq6oKeMeJXNf5ir0=; + b=LdzDYw3WPKOaEGGg5KbapuomNTVB89dc8Nl581vsLG+4dc93yCeO3Qmvehniy/o1at + wliVyMUnVeusMjc6yJEX4dFAXmmNw1WUySkiqQR31D8kldvgB8vxt6nHv6Rz/JrmqGEb + 0tflBnmjnsFNk9JOsOAhLR3MH+GW0zHAeTvNQ= +Received: by 10.205.124.15 with SMTP id gm15mr9059700bkc.63.1329740788242; + Mon, 20 Feb 2012 04:26:28 -0800 (PST) +Received: from localhost ([91.144.186.21]) + by mx.google.com with ESMTPS id ut6sm38802833bkb.14.2012.02.20.04.26.27 + (version=TLSv1/SSLv3 cipher=OTHER); + Mon, 20 Feb 2012 04:26:27 -0800 (PST) +From: Dmitry Kurochkin +To: Pieter Praet , Notmuch Mail +Subject: Re: [PATCH v2 4/4] test: emacs: new test "notmuch-search: change tags + of all matching messages" +In-Reply-To: <1329683908-5435-5-git-send-email-pieter@praet.org> +References: <1310313335-4159-1-git-send-email-pieter@praet.org> + <1329683908-5435-1-git-send-email-pieter@praet.org> + <1329683908-5435-5-git-send-email-pieter@praet.org> +User-Agent: Notmuch/0.11.1+188~ga5674c2 (http://notmuchmail.org) Emacs/23.3.1 + (x86_64-pc-linux-gnu) +Date: Mon, 20 Feb 2012 16:25:05 +0400 +Message-ID: <87linxlmji.fsf@gmail.com> +MIME-Version: 1.0 +Content-Type: text/plain; charset=us-ascii +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Mon, 20 Feb 2012 12:26:33 -0000 + +On Sun, 19 Feb 2012 21:38:28 +0100, Pieter Praet wrote: +> `notmuch-search-tag-all' (bound to "*") adds and removes tags +> to/from all messages which match the query used to populate the +> current search buffer. + +LGTM. But since you will need to send a new version to address Tomi's +comments anyway, below are few minor comments. + +Regards, + Dmitry + +> --- +> test/emacs | 32 ++++++++++++++++++++++++++++++++ +> 1 files changed, 32 insertions(+), 0 deletions(-) +> +> diff --git a/test/emacs b/test/emacs +> index b0fb760..1db8540 100755 +> --- a/test/emacs +> +++ b/test/emacs +> @@ -124,6 +124,38 @@ test_emacs "(notmuch-show \"$os_x_darwin_thread\") +> output=$(notmuch search $os_x_darwin_thread | notmuch_search_sanitize) +> test_expect_equal "$output" "thread:XXX 2009-11-18 [4/4] Jjgod Jiang, Alexander Botero-Lowry; [notmuch] Mac OS X/Darwin compatibility issues (inbox unread)" +> +> +test_begin_subtest "notmuch-search: change tags of all matching messages" +> +old_tag="inbox" +> +new_tag="xobni" +> +filter="AND from:cworth" +> +# Get initial tag counts and prevent false positives/negatives +> +old_tag_count_1=$(notmuch count tag:"${old_tag}" "${filter}") +> +new_tag_count_1=$(notmuch count tag:"${new_tag}" "${filter}") +> +test "${old_tag_count_1}" == "0" && old_tag_count_1="Need 1+ matches!" + +Consider s/1+/>0/. + +> +test "${new_tag_count_1}" == "0" || new_tag_count_1="Need 0 matches!" +> +# Change tags of all matching messages and get tag counts +> +test_emacs "(notmuch-search \"tag:${old_tag} ${filter}\") +> + (notmuch-test-wait) +> + (notmuch-search-tag-all \"-${old_tag}\" \"+${new_tag}\")" +> +old_tag_count_2=$(notmuch count tag:"${old_tag}" "${filter}") +> +new_tag_count_2=$(notmuch count tag:"${new_tag}" "${filter}") +> +# Revert tag changes and get tag counts +> +test_emacs "(notmuch-search \"tag:${new_tag} ${filter}\") +> + (notmuch-test-wait) +> + (notmuch-search-tag-all \"+${old_tag}\" \"-${new_tag}\")" +> +old_tag_count_3=$(notmuch count tag:"${old_tag}" "${filter}") +> +new_tag_count_3=$(notmuch count tag:"${new_tag}" "${filter}") +> +# ... and verify the results +> +output=" +> +before: old:${old_tag_count_1} new:${new_tag_count_1} +> +after: old:${old_tag_count_2} new:${new_tag_count_2} +> +restored: old:${old_tag_count_3} new:${new_tag_count_3}" +> +expected=" +> +before: old:${old_tag_count_1} new:0 +> +after: old:0 new:${old_tag_count_1} +> +restored: old:${old_tag_count_1} new:0" +> +test_expect_equal "$output" "$expected" +> + + +I would add a newline before every commented block. + +Regards, + Dmitry + +> test_begin_subtest "Message with .. in Message-Id:" +> add_message [id]=123..456@example '[subject]="Message with .. in Message-Id"' +> test_emacs '(notmuch-search "id:\"123..456@example\"") +> -- +> 1.7.8.1 +> -- 2.26.2