Hans Dockter wrote:

On Aug 17, 2008, at 12:46 AM, Adam Murdoch wrote:

Hi,

I've just checked in some test cases into src/test/groovy which I've termed 'integration' tests. I think they might need a better home, but I've added them there so that they are being run in the meantime.

The intended scope of these tests is somewhere between the unit tests (test a single class in isolation) and the existing integration tests (a broad pass through gradle as a whole). They are intended to 1. check that a bunch of classes work together, 2. be more focused on a particular behaviour than the other integration tests, and 3. be faster to run. In particular, I think these sorts of tests are handy for testing error handling.

So, where should they live? One option is to leave them where they are, as they are pretty fast.

I think it is a good place where they are now as they are fast. It might make sense to organize this kind of integration tests into its own package structure.

I agree. I'll move them out of the top level package.

When executing them a test fails:

java.lang.AssertionError:
Expected: not null
     got: null

    at org.junit.Assert.assertThat(Assert.java:502)
    at org.junit.Assert.assertThat(Assert.java:492)
at org.gradle.AbstractIntegrationTest.getTestBuildFile(AbstractIntegrationTest.java:43) at org.gradle.ProjectLoadingIntegrationTest.handlesSimilarlyNamedBuildFilesInSameDirectory(ProjectLoadingIntegrationTest.java:26)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98) at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79) at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87) at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
    at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88) at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51) at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44) at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27) at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37) at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42) at com.intellij.rt.junit4.Junit4ClassSuite.run(Junit4ClassSuite.java:99) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)

You'll need to add src/test/resources to your classpath when you run them, and add *.gradle to the set of resources that intellij copies into the test class dir. I'll update the wiki to mention this.


Adam

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

   http://xircles.codehaus.org/manage_email


Reply via email to