From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 28FBDBBC1 for ; Fri, 14 Mar 2008 09:28:31 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqkBACrU2UfAXQImh2dsb2JhbACQfAEBAQgKKZEphn4 X-IronPort-AV: E=Sophos;i="4.25,500,1199660400"; d="scan'208";a="10259237" Received: from discorde.inria.fr ([192.93.2.38]) by mail3-smtp-sop.national.inria.fr with ESMTP; 14 Mar 2008 09:28:30 +0100 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id m2E8SRX6024411 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Fri, 14 Mar 2008 09:28:30 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AjUDAJXT2UdIDszhZGdsb2JhbACQbxgEBAkKGZEshn4 X-IronPort-AV: E=Sophos;i="4.25,500,1199660400"; d="scan'208";a="9436922" Received: from qb-out-0506.google.com ([72.14.204.225]) by mail1-smtp-roc.national.inria.fr with ESMTP; 14 Mar 2008 09:28:30 +0100 Received: by qb-out-0506.google.com with SMTP id a16so3585716qbd.11 for ; Fri, 14 Mar 2008 01:28:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:cc:mime-version:content-type:content-transfer-encoding:content-disposition:x-google-sender-auth; bh=rOlIC+zx4pMOb7iLH7jAtU5Wi145VwdiBdQMVu/vfO8=; b=hfA02wVTq8J8C5gp4JdIY2eKNToj1OKYaG3bnpd/ag2clhzuqdYM3L13mVd1WNUoWr51DsD0sPKkFmb4xOQ4rSt0K74f3Fm06d7g9J01WpcITMB1Ubt0LiPKD7m5gE0fSIrLzfe2xFOM+vutgHlRccDG00r7/Im45dWDDbdqAQo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:cc:mime-version:content-type:content-transfer-encoding:content-disposition:x-google-sender-auth; b=oYbkjao1MLYuKrEgzZmcEpSRTR4J5V2UHJq35QOU8bxYvLh5AIw5qJkSGrk9s2XJSSdGrbwv/x3Dto91sF7WZyiIts1HbZIK1joJ2wbanfOWkGfwvI145LU7BhcYJrNC7Jlsyijpg7BlGjgmkafHh7IicmpWHVkUhu9DalY+3Gk= Received: by 10.142.180.17 with SMTP id c17mr4768132wff.144.1205483308913; Fri, 14 Mar 2008 01:28:28 -0700 (PDT) Received: by 10.142.177.18 with HTTP; Fri, 14 Mar 2008 01:28:28 -0700 (PDT) Message-ID: <3d13dcfc0803140128q52a5ee00mc11bf8dd7bf816a1@mail.gmail.com> Date: Fri, 14 Mar 2008 09:28:28 +0100 From: "David MENTRE" Sender: david.mentre@gmail.com To: "Andrew Gacek" Subject: Integration of tests (was: Re: [Caml-list] invoke function from its name as string) Cc: Andrej.Bauer@andrej.com, Caml MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Google-Sender-Auth: 008b7bdcb029c051 X-Miltered: at discorde with ID 47DA372B.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; compilation:01 srv:98 config:01 invoke:01 caml-list:01 functions:01 string:02 module:03 module:03 static:03 compiled:04 isolated:04 startup:05 function:08 flag:09 Hello, 2008/3/13, Andrew Gacek : > Andrej's solution is interesting since it lets you interleave the > regular code with the test code. For my own code, I keep all tests > isolated to separate files and in each file I maintain the tests as a > list of anonymous functions. In my own code, I maintain a set of tests per module, tests that can be activated with a static program-wide compilation flag: if Config.do_autotests is true, the tests are compiled and executed at module startup. For example, see code starting at line 469 in: http://www.linux-france.org/cgi-bin/hgwebdir.cgi/demexp/latest-dev?f=4f0c248c82c3;file=srv/voting.ml.nw Yours, d.