Without looking at the code I can't be sure, but I would assume that
you can't include -and- exclude the same file. Probably the exclude
list is processed "last' in the code which means it won't run.

Wayne

On 11/11/07, Dan Kigelman <[EMAIL PROTECTED]> wrote:
> Thank you Wayne,
>
> I will be careful about that.  It seems it was working on my linux laptop,
> but I'm sure you've averted some of my future headaches for executing this
> on all kinds of shells.  I renamed the profile and activation to the
> following:
>
>     <profile>
>       <id>conditionProfile</id>
>       <activation>
>         <property>
>           <name>some_condition</name>
>           <value>true</value>
>         </property>
>       </activation>
>       <build>
>
> I execute now with "mvn test -Dsome_condition=true" but still with the same
> result:
>
> -------------------------------------------------------
>  T E S T S
> -------------------------------------------------------
> Running sample.test.ExecuteAlwaysTest
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.04 sec
>
> Results :
>
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
>
> [INFO] [surefire:test {execution: rareTest}]
> [INFO] Surefire report directory:
> /home/danik/workspace/test2/execute-test-conditionally/target/surefire-reports
>
> -------------------------------------------------------
>  T E S T S
> -------------------------------------------------------
> There are no tests to run.
>
> Results :
>
> Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
>
> [INFO]
> ------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO]
> ------------------------------------------------------------------------
>
> Somehow the second surefire execution includes no tests...
>
> -- Dan
>
>
> On Nov 11, 2007 5:41 PM, Wayne Fay <[EMAIL PROTECTED]> wrote:
>
> > Try renaming the profile to some_condition, and then using
> > -Dsome_condition=true. I've never tried to use a property named a-b-c
> > and I'm not entirely sure how different operating systems pass that to
> > Java and how it is interpreted prior to handing it to Maven (eg -D, -h
> > etc). So I would just avoid -'s in profile names, personally.
> >
> > Wayne
> >
> > On 11/11/07, Dan Kigelman <[EMAIL PROTECTED]> wrote:
> > > Hello!
> > >
> > > I am trying to execute a test if and only if a certain condition is set
> > > (such as a profile is activated).  The test would fail if it is run on
> > some
> > > systems, so I am trying to disable it by default, and run it only when
> > run
> > > on the relevant system.
> > >
> > > I made a sample project to simplify the problem.  Below is the relevant
> > part
> > > my pom:
> > >
> > >  <build>
> > >    <plugins>
> > >      <plugin>
> > >        <groupId>org.apache.maven.plugins</groupId>
> > >        <artifactId>maven-surefire-plugin</artifactId>
> > >        <configuration>
> > >          <excludes>
> > >            <exclude>**/ExecuteSometimesTest.java</exclude>
> > >          </excludes>
> > >        </configuration>
> > >      </plugin>
> > >    </plugins>
> > >  </build>
> > >
> > >  <profiles>
> > >    <profile>
> > >      <id>condition-profile</id>
> > >      <activation>
> > >        <property>
> > >          <name>some-condition</name>
> > >        </property>
> > >      </activation>
> > >      <build>
> > >        <plugins>
> > >          <plugin>
> > >            <groupId>org.apache.maven.plugins</groupId>
> > >            <artifactId>maven-surefire-plugin</artifactId>
> > >            <executions>
> > >              <execution>
> > >                <id>rare-test</id>
> > >                <goals>
> > >                  <goal>test</goal>
> > >                </goals>
> > >                <phase>test</phase>
> > >                <configuration>
> > >                  <includes>
> > >                    <include>**/ExecuteSometimesTest.java</include>
> > >                  </includes>
> > >                  <excludes />
> > >                </configuration>
> > >              </execution>
> > >            </executions>
> > >          </plugin>
> > >        </plugins>
> > >      </build>
> > >    </profile>
> > >  </profiles>
> > >
> > > When I execute "mvn test" it works as expected:
> > > -------------------------------------------------------
> > >  T E S T S
> > > -------------------------------------------------------
> > > Running sample.test.ExecuteAlwaysTest
> > > Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.085sec
> > >
> > > Results :
> > >
> > > Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
> > >
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] BUILD SUCCESSFUL
> > > [INFO]
> > > ------------------------------------------------------------------------
> > >
> > >
> > > However, when I execute "mvn test -Dsome-condition" the
> > > ExecuteSometimesTest.java is not executed:
> > >
> > > -------------------------------------------------------
> > >  T E S T S
> > > -------------------------------------------------------
> > > Running sample.test.ExecuteAlwaysTest
> > > Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.04 sec
> > >
> > > Results :
> > >
> > > Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
> > >
> > > [INFO] [surefire:test {execution: rare-test}]
> > > [INFO] Surefire report directory:
> > >
> >
> /home/danik/workspace/test2/execute-test-conditionally/target/surefire-reports
> > >
> > > -------------------------------------------------------
> > >  T E S T S
> > > -------------------------------------------------------
> > > There are no tests to run.
> > >
> > > Results :
> > >
> > > Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
> > >
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] BUILD SUCCESSFUL
> > > [INFO]
> > > ------------------------------------------------------------------------
> > >
> > > Am I doing something wrong or is this a known problem?
> > >
> > > Help would be much appreciated!!
> > >
> > > -- Dan
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to