import org.gradle.api.internal.artifacts.dependencies.DefaultSelfResolvingDependency

/*
 * Copyright 2010 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

configurations {
    reports
    testFixtures
}

dependencies {
    groovy libraries.groovy_depends

    compile project(':core')

    compile libraries.slf4j_api,
            libraries.commons_lang,
            libraries.asm_all,
            libraries.junit,
            libraries.ant,
            'org.testng:testng:5.14.10'

    reports 'css3-pie:css3-pie:1.0beta3'
    testCompile libraries.xmlunit, 'net.sourceforge.nekohtml:nekohtml:1.9.14'

    testCompile project(path: ':core', configuration: 'testFixtures')
    testRuntime project(path: ':core', configuration: 'testFixturesRuntime')
    testFixtures sourceSets.test.classes
}

task reportResources << {
    copy {
        from(configurations.reports)
        into "${sourceSets.main.classesDir}/org/gradle/api/internal/tasks/testing/junit/report"
    }
}

classes.dependsOn reportResources

task ideResources(type: Copy) {
    from(configurations.reports)
    into "${ideDir}/resources/test/org/gradle/api/internal/tasks/testing/junit/report"
}

ide.dependsOn ideResources

ideaModule {
    dependsOn ideResources
    scopes.RUNTIME.plus.add(configurations.detachedConfiguration(new DefaultSelfResolvingDependency(files(new File(ideDir, "resources/test/")))))
}

eclipseClasspath {
    dependsOn ideResources
    plusConfigurations.add(configurations.detachedConfiguration(new DefaultSelfResolvingDependency(files(new File(ideDir, "resources/test/")))))
}

test {
    exclude 'org/gradle/api/internal/tasks/testing/junit/ATestClass*.*'
    exclude 'org/gradle/api/internal/tasks/testing/junit/ABroken*TestClass*.*'
    jvmArgs '-Xms128m', '-Xmx256m', '-XX:+HeapDumpOnOutOfMemoryError'
}
