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 072E2431FAF
\r
6 for <notmuch@notmuchmail.org>; Wed, 1 Feb 2012 15:43:46 -0800 (PST)
\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org
\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 tubsxMjO-Pn1 for <notmuch@notmuchmail.org>;
\r
17 Wed, 1 Feb 2012 15:43:45 -0800 (PST)
\r
18 Received: from mail-bk0-f53.google.com (mail-bk0-f53.google.com
\r
19 [209.85.214.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 B7C1E431FAE
\r
22 for <notmuch@notmuchmail.org>; Wed, 1 Feb 2012 15:43:44 -0800 (PST)
\r
23 Received: by bke11 with SMTP id 11so1724156bke.26
\r
24 for <notmuch@notmuchmail.org>; Wed, 01 Feb 2012 15:43:43 -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:in-reply-to:references:user-agent:date:message-id
\r
27 :mime-version:content-type;
\r
28 bh=PdOAIh0skTBPmBwiGSZoatA8TzcoVcMeTX71Uq/+gLs=;
\r
29 b=DAExZ9Q0pczZnWWfvqTYVNk6upq2TYlMRNGQ+4pBs8R0yjKeMqzIOIR7E14AtgwF5i
\r
30 mp873sYthNCo11hm7h9IBqTceSctvQ+JmRimvot2/x3SR0pExqv/O4URYzI0uaIIem8J
\r
31 RnJoCZfCtW+EtduBHmTNpQcp4uYP6p9aZOeJk=
\r
32 Received: by 10.204.152.219 with SMTP id h27mr294469bkw.40.1328139823347;
\r
33 Wed, 01 Feb 2012 15:43:43 -0800 (PST)
\r
34 Received: from localhost ([91.144.186.21])
\r
35 by mx.google.com with ESMTPS id ci12sm1381438bkb.13.2012.02.01.15.43.41
\r
36 (version=TLSv1/SSLv3 cipher=OTHER);
\r
37 Wed, 01 Feb 2012 15:43:42 -0800 (PST)
\r
38 From: Dmitry Kurochkin <dmitry.kurochkin@gmail.com>
\r
39 To: Jameson Graef Rollins <jrollins@finestructure.net>,
\r
40 Tomi Ollila <tomi.ollila@iki.fi>, notmuch@notmuchmail.org
\r
41 Subject: Re: [PATCH] test: make test_expect_equal_file() arguments flexible
\r
42 In-Reply-To: <87ehuetqjz.fsf@servo.finestructure.net>
\r
43 References: <1328080794-24670-1-git-send-email-dmitry.kurochkin@gmail.com>
\r
44 <87r4yfszx9.fsf@servo.finestructure.net>
\r
45 <87pqdync64.fsf@gmail.com> <m262fqc0wv.fsf@guru.guru-group.fi>
\r
46 <87k446n8ji.fsf@gmail.com> <87ehuetqjz.fsf@servo.finestructure.net>
\r
47 User-Agent: Notmuch/0.11+139~gd9b7cab (http://notmuchmail.org) Emacs/23.3.1
\r
48 (x86_64-pc-linux-gnu)
\r
49 Date: Thu, 02 Feb 2012 03:42:29 +0400
\r
50 Message-ID: <8739aum87u.fsf@gmail.com>
\r
52 Content-Type: text/plain; charset=us-ascii
\r
53 X-BeenThere: notmuch@notmuchmail.org
\r
54 X-Mailman-Version: 2.1.13
\r
56 List-Id: "Use and development of the notmuch mail system."
\r
57 <notmuch.notmuchmail.org>
\r
58 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,
\r
59 <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
\r
60 List-Archive: <http://notmuchmail.org/pipermail/notmuch>
\r
61 List-Post: <mailto:notmuch@notmuchmail.org>
\r
62 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
\r
63 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,
\r
64 <mailto:notmuch-request@notmuchmail.org?subject=subscribe>
\r
65 X-List-Received-Date: Wed, 01 Feb 2012 23:43:46 -0000
\r
69 On Wed, 01 Feb 2012 09:24:32 -0800, Jameson Graef Rollins <jrollins@finestructure.net> wrote:
\r
70 > On Wed, 01 Feb 2012 14:37:53 +0400, Dmitry Kurochkin <dmitry.kurochkin@gmail.com> wrote:
\r
71 > > On Wed, 01 Feb 2012 12:18:08 +0200, Tomi Ollila <tomi.ollila@iki.fi> wrote:
\r
73 > > > There are at least these options here
\r
75 > > > 1) go through all ~100 places where test_expect_equal_file is used
\r
76 > > > and fix the call order: quick look tells that the offending uses
\r
77 > > > are in dump-restore, hooks, search-limiting and symbol-hiding.
\r
79 > > > 2) enforce "expected" filename has some format *and* fix all current
\r
80 > > > uses of it. Add testbed_error () function which yells loudly ane exits...
\r
82 > > > 3) guess which is output and which is expected from args so that
\r
83 > > > machine helps tester here (for both diff output & copied files)a
\r
85 > > > 4) just copy compared files to some directory, those are named as
\r
86 > > > basename of the original -- diff order still inconsistent.
\r
89 > > > I'd just go with option 1 and fix new *violations* when stumble upon one.
\r
92 > > Option 1 does not solve the problem. New violations would apper and
\r
93 > > need to be fixed again. I am for option 2.
\r
95 > How is enforcing use of a particular filename better and more robust
\r
96 > than enforcing argument order?
\r
98 Filename check is a way to make sure the argument order is correct.
\r
100 > You'll still have to force an arbitrary
\r
101 > heuristic. And you'll still be vulnerable to people messing up the file
\r
102 > names (which actually seems easier to get wrong than messing up the
\r
105 Do you mean that people would start writing tests with filenames like:
\r
107 test_expect_equal_file EXPECTED1 EXPECTED2
\r
109 ? That is possible, of course. But do you seriously believe that
\r
110 deliberately changing file names in a way that violates common sense and
\r
111 is inconsistent with all other code is "easier" than writing "EXPECTED
\r
112 OUTPUT" in the wrong order? I do not think so. And it would definately
\r
113 be easier to catch during review.
\r
115 > And you'll have to have more code to parse the argument
\r
118 That is one case statement, with one non-empty case, with one error
\r
121 > And you'll still get inconsistent diffs.
\r
124 No, you do not. That is the point.
\r
126 > If this is really a problem, I vote for 1. In general, I am not in
\r
127 > favor of making the test suite more complicated than it needs to be.
\r
130 Ok. I plan to send a patch soon. If my arguments do not convince
\r
131 enough people, I will move along.
\r