buildscript {
    repositories {
        mavenCentral()
        jcenter()
        maven {
            url 'http://oss.sonatype.org/content/repositories/snapshots'
        }
    }
}

plugins {
    id "com.jfrog.bintray" version "1.2"
}

version = '1.58'

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply from: 'gradle/publishing.gradle'

repositories {
    jcenter()
}

dependencies {
    testCompile 'org.testng:testng:6.9.13'
}

task sourceJar(type: Jar) {
    group 'Build'
    description 'An archive of the source code'
    classifier 'sources'
    from sourceSets.main.allSource
}

artifacts {
    sourceJar
}

test {
    // enable TestNG support (default is JUnit)
    useTestNG()
}
