Re: [ANNOUNCE] mutt with notmuch support
[notmuch-archives.git] / 60 / 50107dfc8499b2f87bc948d3a1d0a57a6d00fa
1 Return-Path: <dmitry.kurochkin@gmail.com>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id 3D1C8429E36\r
6         for <notmuch@notmuchmail.org>; Thu, 17 Nov 2011 05:06:40 -0800 (PST)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: -0.799\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5\r
12         tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,\r
13         FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
14 Received: from olra.theworths.org ([127.0.0.1])\r
15         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
16         with ESMTP id bUdZB6RgIQdR for <notmuch@notmuchmail.org>;\r
17         Thu, 17 Nov 2011 05:06:39 -0800 (PST)\r
18 Received: from mail-fx0-f53.google.com (mail-fx0-f53.google.com\r
19         [209.85.161.53]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
20         (No client certificate requested)\r
21         by olra.theworths.org (Postfix) with ESMTPS id 53A67429E2F\r
22         for <notmuch@notmuchmail.org>; Thu, 17 Nov 2011 05:06:39 -0800 (PST)\r
23 Received: by faan15 with SMTP id n15so3326105faa.26\r
24         for <notmuch@notmuchmail.org>; Thu, 17 Nov 2011 05:06:38 -0800 (PST)\r
25 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma;\r
26         h=from:to:subject:date:message-id:x-mailer:in-reply-to:references;\r
27         bh=wuThNI7vv8goKWzsdP9yQ1hr/34FKbmHpX9NrigUlXo=;\r
28         b=cATBJZPQb95IqINeyaeHQycYvNQ0QRSxxBx/l6XzUmVBGmtmydWS4ebwyklTy3twAC\r
29         tmFQ4scObihiCBHHdqKCmVfXoK4VB2G+sKvHSyMLOoiRDZT1Lzd5F3s03pF8ANxsQCru\r
30         rEyPsezXwQfYZZ86RqdcYql6xp1ZFsIqX3LwE=\r
31 Received: by 10.204.157.27 with SMTP id z27mr33506983bkw.8.1321535198121;\r
32         Thu, 17 Nov 2011 05:06:38 -0800 (PST)\r
33 Received: from localhost ([91.144.186.21])\r
34         by mx.google.com with ESMTPS id j9sm41234603bkd.2.2011.11.17.05.06.36\r
35         (version=TLSv1/SSLv3 cipher=OTHER);\r
36         Thu, 17 Nov 2011 05:06:37 -0800 (PST)\r
37 From: Dmitry Kurochkin <dmitry.kurochkin@gmail.com>\r
38 To: notmuch@notmuchmail.org\r
39 Subject: [PATCH v2 06/10] test: skip all subtests if external dependencies are\r
40         missing during init\r
41 Date: Thu, 17 Nov 2011 17:05:59 +0400\r
42 Message-Id: <1321535163-4895-7-git-send-email-dmitry.kurochkin@gmail.com>\r
43 X-Mailer: git-send-email 1.7.7.2\r
44 In-Reply-To: <1321535163-4895-1-git-send-email-dmitry.kurochkin@gmail.com>\r
45 References: <1321535163-4895-1-git-send-email-dmitry.kurochkin@gmail.com>\r
46 X-BeenThere: notmuch@notmuchmail.org\r
47 X-Mailman-Version: 2.1.13\r
48 Precedence: list\r
49 List-Id: "Use and development of the notmuch mail system."\r
50         <notmuch.notmuchmail.org>\r
51 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
52         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
53 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
54 List-Post: <mailto:notmuch@notmuchmail.org>\r
55 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
56 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
57         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
58 X-List-Received-Date: Thu, 17 Nov 2011 13:06:40 -0000\r
59 \r
60 Some tests (e.g. crypto) do a common initialization required for all\r
61 subtests.  The patch adds a check for missing external dependencies\r
62 during this initialization.  If any prerequisites are missing, all\r
63 subtests are skipped.\r
64 \r
65 The check is run on the first call of test_reset_state_ function, so\r
66 no changes for the tests are needed.\r
67 ---\r
68  test/test-lib.sh |   10 ++++++++++\r
69  1 files changed, 10 insertions(+), 0 deletions(-)\r
70 \r
71 diff --git a/test/test-lib.sh b/test/test-lib.sh\r
72 index ce7576a..4c73437 100755\r
73 --- a/test/test-lib.sh\r
74 +++ b/test/test-lib.sh\r
75 @@ -880,44 +880,54 @@ test_emacs () {\r
76                 # start a detached session with an emacs server\r
77                 # user's TERM is given to dtach which assumes a minimally\r
78                 # VT100-compatible terminal -- and emacs inherits that\r
79                 TERM=$ORIGINAL_TERM dtach -n "$TMP_DIRECTORY/emacs-dtach-socket.$$" \\r
80                         sh -c "stty rows 24 cols 80; exec '$TMP_DIRECTORY/run_emacs' \\r
81                                 --no-window-system \\r
82                                 --eval '(setq server-name \"$server_name\")' \\r
83                                 --eval '(server-start)' \\r
84                                 --eval '(orphan-watchdog $$)'" || return\r
85                 EMACS_SERVER="$server_name"\r
86                 # wait until the emacs server is up\r
87                 until test_emacs '()' 2>/dev/null; do\r
88                         sleep 1\r
89                 done\r
90         fi\r
91  \r
92         emacsclient --socket-name="$EMACS_SERVER" --eval "(progn $@)"\r
93  }\r
94  \r
95  test_reset_state_ () {\r
96 +       test -z "$test_init_done_" && test_init_\r
97 +\r
98         test_subtest_known_broken_=\r
99         test_subtest_missing_external_prereqs_=\r
100  }\r
101  \r
102 +# called once before the first subtest\r
103 +test_init_ () {\r
104 +       test_init_done_=t\r
105 +\r
106 +       # skip all tests if there were external prerequisites missing during init\r
107 +       test_check_missing_external_prereqs_ "all tests in $this_test" && test_done\r
108 +}\r
109 +\r
110  \r
111  find_notmuch_path ()\r
112  {\r
113      dir="$1"\r
114  \r
115      while [ -n "$dir" ]; do\r
116         bin="$dir/notmuch"\r
117         if [ -x "$bin" ]; then\r
118             echo "$dir"\r
119             return\r
120         fi\r
121         dir="$(dirname "$dir")"\r
122         if [ "$dir" = "/" ]; then\r
123             break\r
124         fi\r
125      done\r
126  }\r
127  \r
128  # Test the binaries we have just built.  The tests are kept in\r
129  # test/ subdirectory and are run in 'trash directory' subdirectory.\r
130 -- \r
131 1.7.7.2\r
132 \r