Re: [PATCH] test: don't bail out of `run_emacs' too early when missing prereqs
authorDmitry Kurochkin <dmitry.kurochkin@gmail.com>
Sun, 15 Jan 2012 13:50:32 +0000 (17:50 +0400)
committerW. Trevor King <wking@tremily.us>
Fri, 7 Nov 2014 17:42:12 +0000 (09:42 -0800)
f8/05697db7555c5d2fd01561615704ec0474a9e3 [new file with mode: 0644]

diff --git a/f8/05697db7555c5d2fd01561615704ec0474a9e3 b/f8/05697db7555c5d2fd01561615704ec0474a9e3
new file mode 100644 (file)
index 0000000..f84e398
--- /dev/null
@@ -0,0 +1,120 @@
+Return-Path: <dmitry.kurochkin@gmail.com>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id 1FBF1431FAF\r
+       for <notmuch@notmuchmail.org>; Sun, 15 Jan 2012 05:51:30 -0800 (PST)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.799\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5\r
+       tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,\r
+       FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+       by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+       with ESMTP id g24-KK7mzAaK for <notmuch@notmuchmail.org>;\r
+       Sun, 15 Jan 2012 05:51:29 -0800 (PST)\r
+Received: from mail-bk0-f53.google.com (mail-bk0-f53.google.com\r
+       [209.85.214.53]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
+       (No client certificate requested)\r
+       by olra.theworths.org (Postfix) with ESMTPS id 5C7AD431FAE\r
+       for <notmuch@notmuchmail.org>; Sun, 15 Jan 2012 05:51:29 -0800 (PST)\r
+Received: by bkat2 with SMTP id t2so3965080bka.26\r
+       for <notmuch@notmuchmail.org>; Sun, 15 Jan 2012 05:51:26 -0800 (PST)\r
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;\r
+       h=from:to:cc:subject:in-reply-to:references:user-agent:date\r
+       :message-id:mime-version:content-type;\r
+       bh=48FsKfRheU59cyPLH7WXN4mfPP5k6uXD1agAgBegMrs=;\r
+       b=gpB0jTRsqFKOBMjANqpNv8Er7cbCYEoZZTp9KBc7wV4c/V5txIfUbKLfzGBOiN4l9d\r
+       dQjCZzB4hAeMQZwQXaC1FyhCHxfiJZVfze/axXMjOsMS3+aW99oNeMxjTLjEMk1bZcBe\r
+       bDx0bHyBNR+7Q2N1kveH2VCmqnoKIn4i8rUyM=\r
+Received: by 10.205.127.65 with SMTP id gz1mr3451032bkc.12.1326635486673;\r
+       Sun, 15 Jan 2012 05:51:26 -0800 (PST)\r
+Received: from localhost ([91.144.186.21])\r
+       by mx.google.com with ESMTPS id ek9sm1591532bkb.10.2012.01.15.05.51.24\r
+       (version=TLSv1/SSLv3 cipher=OTHER);\r
+       Sun, 15 Jan 2012 05:51:25 -0800 (PST)\r
+From: Dmitry Kurochkin <dmitry.kurochkin@gmail.com>\r
+To: Pieter Praet <pieter@praet.org>\r
+Subject: Re: [PATCH] test: don't bail out of `run_emacs' too early when\r
+       missing prereqs\r
+In-Reply-To: <1326532177-19167-1-git-send-email-pieter@praet.org>\r
+References: <87mx9qps82.fsf@praet.org>\r
+       <1326532177-19167-1-git-send-email-pieter@praet.org>\r
+User-Agent: Notmuch/0.10.2+135~gb811a3c (http://notmuchmail.org) Emacs/23.3.1\r
+       (x86_64-pc-linux-gnu)\r
+Date: Sun, 15 Jan 2012 17:50:32 +0400\r
+Message-ID: <8762gdnkgn.fsf@gmail.com>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain; charset=us-ascii\r
+Cc: Notmuch Mail <notmuch@notmuchmail.org>\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+       <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sun, 15 Jan 2012 13:51:30 -0000\r
+\r
+On Sat, 14 Jan 2012 10:09:37 +0100, Pieter Praet <pieter@praet.org> wrote:\r
+> When running the Emacs tests in verbose mode, only the first missing\r
+> prereq is reported because the `run_emacs' function is short-circuited\r
+> early:\r
+> \r
+>   #+begin_example\r
+>     emacs: Testing emacs interface\r
+>      missing prerequisites: [0]  emacs(1)\r
+>      skipping test: [0]  Basic notmuch-hello view in emacs\r
+>      SKIP   [0]  Basic notmuch-hello view in emacs\r
+>   #+end_example\r
+> \r
+> This can lead to situations reminiscent of "dependency hell", so instead\r
+> of returning based on each individual `test_require_external_prereq's exit\r
+> status, we now do so only after checking all the prereqs:\r
+> \r
+>   #+begin_example\r
+>     emacs: Testing emacs interface\r
+>      missing prerequisites: [0]  dtach(1) emacs(1) emacsclient(1)\r
+>      skipping test: [0]  Basic notmuch-hello view in emacs\r
+>      SKIP   [0]  Basic notmuch-hello view in emacs\r
+>   #+end_example\r
+> \r
+> Also added missing prereq for dtach(1).\r
+\r
+looks good to me\r
+\r
+Regards,\r
+  Dmitry\r
+\r
+> ---\r
+>  test/test-lib.sh |    7 +++++--\r
+>  1 files changed, 5 insertions(+), 2 deletions(-)\r
+> \r
+> diff --git a/test/test-lib.sh b/test/test-lib.sh\r
+> index 82767c0..d1fbc05 100644\r
+> --- a/test/test-lib.sh\r
+> +++ b/test/test-lib.sh\r
+> @@ -907,8 +907,11 @@ EOF\r
+>  \r
+>  test_emacs () {\r
+>      # test dependencies beforehand to avoid the waiting loop below\r
+> -    test_require_external_prereq emacs || return\r
+> -    test_require_external_prereq emacsclient || return\r
+> +    missing_dependencies=\r
+> +    test_require_external_prereq dtach || missing_dependencies=1\r
+> +    test_require_external_prereq emacs || missing_dependencies=1\r
+> +    test_require_external_prereq emacsclient || missing_dependencies=1\r
+> +    test -z "$missing_dependencies" || return\r
+>  \r
+>      if [ -z "$EMACS_SERVER" ]; then\r
+>              server_name="notmuch-test-suite-$$"\r
+> -- \r
+> 1.7.8.1\r
+> \r