<commit_before>

object This {
    val version = "7.1.1-SNAPSHOT"
    val artifactId = "testng"
    val groupId = "org.testng"
    val description = "Testing framework for Java"
    val url = "https://testng.org"
    val scm = "github.com/cbeust/testng"

    // Should not need to change anything below
    val issueManagementUrl = "https://$scm/issues"
}

allprojects {
    group = This.groupId
    version = This.version
    apply<MavenPublishPlugin>()
    tasks.withType<Javadoc> {
        options {
            isFailOnError = false
            quiet()
            outputLevel = JavadocOutputLevel.QUIET
            jFlags = listOf("-Xdoclint:none", "-quiet")
            "-quiet"
        }
    }
}

buildscript {
    repositories {
        jcenter()
        mavenCentral()
        maven { setUrl("https://plugins.gradle.org/m2") }
    }
    dependencies {
        classpath("org.hibernate.build.gradle:version-injection-plugin:1.0.0")
    }
}

java {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}

repositories {
    jcenter()
    mavenCentral()
    maven { setUrl("https://plugins.gradle.org/m2") }
}

plugins {
    java
    `java-library`
    `maven-publish`
    signing
    groovy
    id("org.sonarqube") version "2.7.1"
    id("com.jfrog.bintray") version "1.8.3" // Don't use 1.8.4, crash when publishing
    id("com.gradle.build-scan") version "2.4.1"
}

dependencies {
    listOf("com.google.code.findbugs:jsr305:3.0.1",
            "org.apache.ant:ant:1.10.3",
            "junit:junit:4.12").forEach {
        compileOnly(it)
    }

    listOf("com.beust:jcommander:1.72", "com.google.inject:guice:4.1.0:no_aop",
            "org.yaml:snakeyaml:1.21").forEach {
        compile(it)
    }

    listOf("org.assertj:assertj-core:3.10.0",
            "org.codehaus.groovy:groovy-all:2.4.7",
            "org.spockframework:spock-core:1.0-groovy-2.4",
            "org.apache-extras.beanshell:bsh:2.0b6",
            "org.mockito:mockito-core:2.12.0",
            "org.jboss.shrinkwrap:shrinkwrap-api:1.2.6",
            "org.jboss.shrinkwrap:shrinkwrap-impl-base:1.2.6").forEach {
        testCompile(it)
    }
}

buildScan {
    setTermsOfServiceUrl("https://gradle.com/terms-of-service")
    setTermsOfServiceAgree("yes")
    publishAlways()
}

tasks.jar {
    manifest {
        attributes(
            "Bundle-License" to "http://apache.org/licenses/LICENSE-2.0",
            "Bundle-Description" to "TestNG is a testing framework.",
            "Import-Package" to """
                "bsh.*;version="[2.0.0,3.0.0)";resolution:=optional",<commit_msg>Fix dependencies.<commit_after>

object This {
    val version = "7.1.1-SNAPSHOT"
    val artifactId = "testng"
    val groupId = "org.testng"
    val description = "Testing framework for Java"
    val url = "https://testng.org"
    val scm = "github.com/cbeust/testng"

    // Should not need to change anything below
    val issueManagementUrl = "https://$scm/issues"
}

allprojects {
    group = This.groupId
    version = This.version
    apply<MavenPublishPlugin>()
    tasks.withType<Javadoc> {
        options {
            isFailOnError = false
            quiet()
            outputLevel = JavadocOutputLevel.QUIET
            jFlags = listOf("-Xdoclint:none", "-quiet")
            "-quiet"
        }
    }
}

buildscript {
    repositories {
        jcenter()
        mavenCentral()
        maven { setUrl("https://plugins.gradle.org/m2") }
    }
    dependencies {
        classpath("org.hibernate.build.gradle:version-injection-plugin:1.0.0")
    }
}

java {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}

repositories {
    jcenter()
    mavenCentral()
    maven { setUrl("https://plugins.gradle.org/m2") }
}

plugins {
    java
    `java-library`
    `maven-publish`
    signing
    groovy
    id("org.sonarqube") version "2.7.1"
    id("com.jfrog.bintray") version "1.8.3" // Don't use 1.8.4, crash when publishing
    id("com.gradle.build-scan") version "2.4.1"
}

dependencies {
    listOf("com.google.code.findbugs:jsr305:3.0.1").forEach {
        compileOnly(it)
    }

    listOf("com.beust:jcommander:1.72",
            "org.apache.ant:ant:1.10.3",
            "junit:junit:4.12",
            "com.google.inject:guice:4.1.0:no_aop",
            "org.yaml:snakeyaml:1.21").forEach {
        compile(it)
    }

    listOf("org.assertj:assertj-core:3.10.0",
            "org.codehaus.groovy:groovy-all:2.4.7",
            "org.spockframework:spock-core:1.0-groovy-2.4",
            "org.apache-extras.beanshell:bsh:2.0b6",
            "org.mockito:mockito-core:2.12.0",
            "org.jboss.shrinkwrap:shrinkwrap-api:1.2.6",
            "org.jboss.shrinkwrap:shrinkwrap-impl-base:1.2.6").forEach {
        testCompile(it)
    }
}

buildScan {
    setTermsOfServiceUrl("https://gradle.com/terms-of-service")
    setTermsOfServiceAgree("yes")
    publishAlways()
}

tasks.jar {
    manifest {
        attributes(
            "Bundle-License" to "http://apache.org/licenses/LICENSE-2.0",
            "Bundle-Description" to "TestNG is a testing framework.",
            "Import-Package" to """
                "bsh.*;version="[2.0.0,3.0.0)";resolution:=optional",
{'fraction_non_alphanumeric': 0.14853556485355648, 'fraction_numerical': 0.029669075694180296, 'mean_word_length': 2.305468258956631, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 10, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5955977', 'n_tokens_mistral': 1936, 'n_tokens_neox': 1833, 'n_words': 254}