Ok - obviously I still owe you some piece of information ;-)
 
I'm want to build & test the same sources against all different platforms + 
clrversions from within 1 build file.
 
-Erich

________________________________

        From: Bob Archer [mailto:[EMAIL PROTECTED] 
        Sent: Friday, May 04, 2007 3:14 PM
        To: Erich Eichinger; Gert Driesen; SPEAR, Adrian, GBM; 
nant-users@lists.sourceforge.net
        Subject: RE: [NAnt-users] NUnit NAnt task roadmap
        
        
        X-ExchangeSecure-AntiSpam: valid(71) 

        Ok,

         

        Maybe I'm confused because we don't install NUnit. We put it in the 
tools directory under the application directory of each project. This way, the 
specific version of NUnit that we are using for that project is always used. 
The specific version can also have a config file to specify the runtime version.

         

        BOb

         

         

        ________________________________

                From: Erich Eichinger [mailto:[EMAIL PROTECTED] 
        Sent: Friday, May 04, 2007 5:32 AM
        To: Gert Driesen; SPEAR, Adrian, GBM; Bob Archer; 
nant-users@lists.sourceforge.net
        Subject: RE: [NAnt-users] NUnit NAnt task roadmap

         

        No prob ;-)

         

        While looking for an easy solution to launch the nunit-console.exe 
using the right clr runtime, I found that at least on windows (unfort. I don't 
have a linux box) one needs the following

         

        1) using MS CLR:  Set COMPLUS_VERSION environment variable

          e.g. c:\set COMPLUS_VERSION=v2.0.507272

                c:\nunit-console.exe <args>

          

        2) using Mono: pass --runtime=<clrversion> argument to mono.exe 

           e.g. "mono.exe --runtime=v2.0.50727 nunit-console.exe"

         

        A dedicated <nunit-console> task is fine, but would basically need the 
same mechanisms: specify the right clr version and launch the executable.

         

        When doing a nant.settings.currentframework='mono-2.0' I would expect 
an <exec program='some.exe' managed='true' > to launch some.exe using the Mono 
2.0 runtime - which is not the case atm. E.g. on my machine the 
"DefaultCLRVersion" of mono is set to 1.1.4322 - thus if <exec> launches the 
process with "mono.exe some.exe" it will execute using the default clr version. 
Only "mono.exe --runtime=2.0 some.exe" will produce the expected result.

         

        It is easy to define the enviroment variable in the 
<nant/frameworks/platform/framework/environment> section of nant.exe.config, 
which causes the enviroment variable be set automatically by 
ExternalProgramBase.PrepareProcess(). But it is impossible to define additional 
arguments to be passed to the runtimeengine (e.g. "mono.exe")

         

        My suggestion is to introduce a "RuntimeEngineArguments:string" 
property on class NAnt.Core.FrameworkInfo which allows for specifying 
additional arguments and in 
NAnt.Core.Tasks.ExternalProgramBase.PrepareProcess() change the line 425 (in 
the current nightly) to

         

          process.StartInfo.Arguments = 
string.Format(CultureInfo.InvariantCulture, "{0} \"{1}\" {2}",
               Project.TargetFramework.RuntimeEngineArguments, ProgramFileName, 
CommandLine);

         

        Could I put some more light on this now?

         

        cheers,

        Erich

         

         

        ________________________________

                From: Gert Driesen [mailto:[EMAIL PROTECTED]
        Sent: Fri 2007-05-04 10:28
        To: Erich Eichinger; 'SPEAR, Adrian, GBM'; 'Bob Archer'; 
nant-users@lists.sourceforge.net
        Subject: RE: [NAnt-users] NUnit NAnt task roadmap

        and what would the exec task do with this ? how will this ensure that 
the correct version of nunit-console is executed ?

         

        please enlighten me ;-)

         

        ________________________________

                From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of 
Erich Eichinger
        Sent: vrijdag 4 mei 2007 10:20
        To: Gert Driesen; SPEAR, Adrian, GBM; Bob Archer; 
nant-users@lists.sourceforge.net
        Subject: Re: [NAnt-users] NUnit NAnt task roadmap

        Maybe my proposal is misleading: 

         

        the "--runtime==" argument from my example is only passed to the 
runtimeengine - and only if it is specified in the framework configuration in 
nant.exe.config.

         

        Erich 

         

        ________________________________

                From: Gert Driesen [mailto:[EMAIL PROTECTED]
        Sent: Fri 2007-05-04 10:17
        To: Erich Eichinger; 'SPEAR, Adrian, GBM'; 'Bob Archer'; 
nant-users@lists.sourceforge.net
        Subject: RE: [NAnt-users] NUnit NAnt task roadmap

        Eric,

         

        Not everyone program you start using <exec> will like the 
--runtime=.... argument. Configuring it on the framework level would also give 
the impression that it applies to all tasks.

         

        I'd still prefer an <nunit-console> task, but if there's no interest in 
this .... and if there is, feel free to beat me to it ;-)

         

        Gert 

        ________________________________

                From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of 
Erich Eichinger
        Sent: vrijdag 4 mei 2007 10:09
        To: Gert Driesen; SPEAR, Adrian, GBM; Bob Archer; 
nant-users@lists.sourceforge.net
        Subject: Re: [NAnt-users] NUnit NAnt task roadmap

        After playing around a little bit, I found that using <exec> would be a 
convenient solution. "would" because unfortunately it is not possible to pass 
arguments to the runtimeengine. Otherwise the solution would be rather easy by 
configuring the frameworks within nant.exe.config. E.g.:

         

        [NAnt.exe.config]
        ...
        <framework 
         name="net-2.0" 
         family="net" 
         version="2.0" 
         description="Microsoft .NET Framework 2.0" 
         runtimeengine=""
         clrversion="2.0.50727"
        >
          ....
         <environment>
          <env name="COMPLUS_VERSION" value="v2.0.50727" />
         </environment>
         ....
        </framework>

        
        <framework 
         name="mono-2.0"
         family="mono"
         version="2.0"
         description="Mono 2.0 Profile"
         runtimeengine="${runtimeEngine}"
         runtimeengineargs="--runtime=v2.0.50727"   <-- New Attribute
         clrversion="2.0.50727"
         >
        ...
        </framework>

        ...

         

        Having the frameworks configured like this would cause any exec task to 
be started within the right runtime engine + version and allows for simply 
writing

         

        <target name="test">
         <exec useruntimeengine="true"
          workingdir="${build.outputdir}/${nant.settings.currentframework}"
          program="${nunit.exe}"
         >
          <arg value="${project::get-name()}.Tests.dll" />
         </exec>
        </target>

         

        to test an assembly against the current 
${nant.settings.currentframework}

         

        cheers,

        Erich

         

        P.S.:  Of course <exec> can't guarantee the clr version if the 
executable uses a <startup> section. 

         

         

         

        ________________________________

                From: Gert Driesen [mailto:[EMAIL PROTECTED]
        Sent: Thu 2007-05-03 18:32
        To: 'SPEAR, Adrian, GBM'; 'Bob Archer'; Erich Eichinger; 
nant-users@lists.sourceforge.net
        Subject: RE: [NAnt-users] NUnit NAnt task roadmap

        You're wrong on this. Unless if you're sure that your build file will 
allow
        you to run your unit tests on Mono or a specific version of the MS CLR 
...
        
        -----Original Message-----
        From: [EMAIL PROTECTED]
        [mailto:[EMAIL PROTECTED] On Behalf Of SPEAR,
        Adrian, GBM
        Sent: donderdag 3 mei 2007 16:03
        To: 'Gert Driesen'; Bob Archer; Erich Eichinger;
        nant-users@lists.sourceforge.net
        Subject: Re: [NAnt-users] NUnit NAnt task roadmap
        
        To be honest - I don't see the need for a task to wrap nunit-console 
and the
        like (e.g. ncover.console.exe).
        
        As Bob states - just use an exec task to invoke the console application.
        
        I have created a simple .build file which depending upon parameters 
supplied
        will use exec to invoke typemock and ncover with the correct params to 
also
        call nunit for a combined unit test / code coverage profile run - this
        script also adapts the command line whether typemock is linked or 
not....
        
        This works well for me and I only have to supply directories for
        nunit/ncover and typemock if I am not using PATH.
        
        <project name="integration.codecoverage" default="codecoverage">
               
                <!-- required property values -->
                <property name="integration.codecoverage.workingdirectory" 
value=""
        overwrite="false"/>
                <!-- required property values -->
        
                <!-- overridable property values -->
                <property name="integration.codecoverage.typemock.path"
        value="C:\Program Files\TypeMock\TypeMock.Net\" overwrite="false"/>
                <property name="integration.codecoverage.typemock.console"
        value="tmockrunner.exe" overwrite="false"/>
                <property name="integration.codecoverage.typemock.profilername"
        value="NCover1.5.7" />
                <property name="integration.codecoverage.typemock.islinked"
        value="true" overwrite="false"/>
               
                <property name="integration.codecoverage.ncover.path"
        value="C:\Program Files\NCover\" overwrite="false"/>
                <property name="integration.codecoverage.ncover.console"
        value="ncover.console.exe" overwrite="false"/>
                <property 
name="integration.codecoverage.ncover.console.assemblies"
        value="SCLtd.NAnt.Extensions.Tasks" overwrite="false"/>
               
                <property name="integration.codecoverage.nunitproject"
        value="SCLtd.NAnt.Extensions" overwrite="false"/>
                <property name="integration.codecoverage.nunitconfig" 
value="Debug"
        overwrite="false"/>
                <property name="integration.codecoverage.nunit.path"
        value="C:\Program Files\Nunit 2.2.9\bin\" overwrite="false"/>
                <property name="integration.codecoverage.nunit.console"
        value="nunit-console.exe" overwrite="false"/>
        
                <!-- overridable property values -->
        
                <!-- explicit property values -->
                <!-- explicit property values -->
        
                <target name="codecoverage" depends="integration.codecoverage" 
/>
        
                <target name="integration.codecoverage" description="">
                       
                        <echo
        
message="integration.codecoverage.typemock.islinked=${integration.codecovera
        ge.typemock.islinked}" />
        
                        <if
        
test="${property::get-value('integration.codecoverage.typemock.islinked') ==
        'true'}">
                                <echo
        message="workingdir=${integration.codecoverage.workingdirectory}" />
                                <echo
        
message="program=${integration.codecoverage.ncover.path}${integration.codeco
        verage.ncover.console}" />
                                <echo message="commandline=//w
        ${integration.codecoverage.workingdirectory} //x
        ${integration.codecoverage.nunitproject}.NCoverResults.xml
        
${integration.codecoverage.nunit.path}${integration.codecoverage.nunit.conso
        le} ${integration.codecoverage.nunitproject}.nunit
        /config=${integration.codecoverage.nunitconfig}
        /xml=${integration.codecoverage.nunitproject}.NUnitResults.xml  //a
        ${integration.codecoverage.ncover.console.assemblies}" />
        
                                <exec
               
        workingdir="${integration.codecoverage.workingdirectory}"
               
        
program="${integration.codecoverage.ncover.path}${integration.codecoverage.n
        cover.console}"
                                        commandline="//w
        ${integration.codecoverage.workingdirectory} //x
        ${integration.codecoverage.nunitproject}.NCoverResults.xml
        
${integration.codecoverage.nunit.path}${integration.codecoverage.nunit.conso
        le} ${integration.codecoverage.nunitproject}.nunit
        /config=${integration.codecoverage.nunitconfig}
        /xml=${integration.codecoverage.nunitproject}.NUnitResults.xml  //a
        ${integration.codecoverage.ncover.console.assemblies}"
                                />
                        </if>
                        <if
        
test="${property::get-value('integration.codecoverage.typemock.islinked') ==
        'false'}">
                                <echo
        message="workingdir=${integration.codecoverage.workingdirectory}" />
                                <echo
        
message="program=${integration.codecoverage.typemock.path}${integration.code
        coverage.typemock.console}" />
                                <echo message="commandline=-link
        ${integration.codecoverage.typemock.profilername}
        
${integration.codecoverage.ncover.path}${integration.codecoverage.ncover.con
        sole} //w ${integration.codecoverage.workingdirectory} //x
        ${integration.codecoverage.nunitproject}.NCoverResults.xml
        
${integration.codecoverage.nunit.path}${integration.codecoverage.nunit.conso
        le} ${integration.codecoverage.nunitproject}.nunit
        /config=${integration.codecoverage.nunitconfig}
        /xml=${integration.codecoverage.nunitproject}.NUnitResults.xml  //a
        ${integration.codecoverage.ncover.console.assemblies}" />
        
                                <exec
               
        workingdir="${integration.codecoverage.workingdirectory}"
               
        
program="${integration.codecoverage.typemock.path}${integration.codecoverage
        ..typemock.console}"
                                        commandline="-link
        ${integration.codecoverage.typemock.profilername}
        
${integration.codecoverage.ncover.path}${integration.codecoverage.ncover.con
        sole} //w ${integration.codecoverage.workingdirectory} //x
        ${integration.codecoverage.nunitproject}.NCoverResults.xml
        
${integration.codecoverage.nunit.path}${integration.codecoverage.nunit.conso
        le} ${integration.codecoverage.nunitproject}.nunit
        /config=${integration.codecoverage.nunitconfig}
        /xml=${integration.codecoverage.nunitproject}.NUnitResults.xml  //a
        ${integration.codecoverage.ncover.console.assemblies}"
                                />
                        </if>
                       
                </target>
        
        </project>
        
        
        -----Original Message-----
        From: [EMAIL PROTECTED]
        [mailto:[EMAIL PROTECTED] On Behalf Of Gert Driesen
        Sent: 03 May 2007 14:52
        To: Bob Archer; Erich Eichinger; nant-users@lists.sourceforge.net
        Subject: Re: [NAnt-users] NUnit NAnt task roadmap
        
        Hi Bob,
        
        I've been planning on adding an nunit-console task would be basically 
just
        be wrapper around nunit-console.exe.
        
        The only advantage would be that the nunit-console task can 
automatically
        invoke the nunit-console assembly and set the environment for the 
current
        target framework.
        
        Would something like this be useful ?
        
        Gert
        
        ----- Original Message -----
        From: "Bob Archer" <[EMAIL PROTECTED]>
        To: "Erich Eichinger" <[EMAIL PROTECTED]>;
        <nant-users@lists.sourceforge.net>
        Sent: Thursday, May 03, 2007 3:22 PM
        Subject: Re: [NAnt-users] NUnit NAnt task roadmap
        
        
        Nothing against Nant. But, this is the reason a lot of people recommend
        running NUnit with the exec task.
        
        
        
        ________________________________
        
        From: [EMAIL PROTECTED]
        [mailto:[EMAIL PROTECTED] On Behalf Of Erich
        Eichinger
        Sent: Thursday, May 03, 2007 1:56 AM
        To: nant-users@lists.sourceforge.net
        Subject: [NAnt-users] NUnit NAnt task roadmap
        
        
        
        Hi,
        
        Since NUnit 2.4 is already out, I'd like to know if there are any 
concrete
        plans to upgrade/extend the nunit task to the new version. As far as I 
could
        see, the nunit task is still compiled against 2.2.8.
        
        cheers,
        Erich
        
        
        
        
        
        
        
----------------------------------------------------------------------------
        ----
        
        
        > ----------------------------------------------------------------------
        > --- This SF.net email is sponsored by DB2 Express Download DB2 Express
        > C - the FREE version of DB2 express and take control of your XML. No
        > limits. Just data. Click to get it now.
        > http://sourceforge.net/powerbar/db2/
        
        
        
----------------------------------------------------------------------------
        ----
        
        
        > _______________________________________________
        > NAnt-users mailing list
        > NAnt-users@lists.sourceforge.net
        > https://lists.sourceforge.net/lists/listinfo/nant-users
        >
        
        
        
        
-------------------------------------------------------------------------
        This SF.net email is sponsored by DB2 Express Download DB2 Express C - 
the
        FREE version of DB2 express and take control of your XML. No limits. 
Just
        data. Click to get it now.
        http://sourceforge.net/powerbar/db2/
        _______________________________________________
        NAnt-users mailing list
        NAnt-users@lists.sourceforge.net
        https://lists.sourceforge.net/lists/listinfo/nant-users
        
        
****************************************************************************
        *******
        The Royal Bank of Scotland plc. Registered in Scotland No 90312. 
Registered
        Office: 36 St Andrew Square, Edinburgh EH2 2YB.
        Authorised and regulated by the Financial Services Authority
        
        This e-mail message is confidential and for use by the addressee only. 
If
        the message is received by anyone other than the addressee, please 
return
        the message to the sender by replying to it and then delete the message 
from
        your computer. Internet e-mails are not necessarily secure. The Royal 
Bank
        of Scotland plc does not accept responsibility for changes made to this
        message after it was sent.
        
        Whilst all reasonable care has been taken to avoid the transmission of
        viruses, it is the responsibility of the recipient to ensure that the 
onward
        transmission, opening or use of this message and any attachments will 
not
        adversely affect its systems or data. No responsibility is accepted by 
The
        Royal Bank of Scotland plc in this regard and the recipient should 
carry out
        such virus and other checks as it considers appropriate.
        Visit our websites at:
        www.rbs.com
        www.rbsgc.com
        www.rbsmarkets.com
        
****************************************************************************
        *******
        
        
-------------------------------------------------------------------------
        This SF.net email is sponsored by DB2 Express Download DB2 Express C - 
the
        FREE version of DB2 express and take control of your XML. No limits. 
Just
        data. Click to get it now.
        http://sourceforge.net/powerbar/db2/
        _______________________________________________
        NAnt-users mailing list
        NAnt-users@lists.sourceforge.net
        https://lists.sourceforge.net/lists/listinfo/nant-users


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
NAnt-users mailing list
NAnt-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users

Reply via email to