/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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.
 */

apply plugin: 'java'
apply plugin: 'me.champeau.gradle.jmh'

dependencies {
  /*
   * Keep these dependencies as small as possible: we should not rely on
   * gobblin-runtime, -core etc as they pull in huge transitive dependency trees!
   */
  compile project(":gobblin-api")
  compile project(":gobblin-modules:gobblin-codecs")
  compile project(":gobblin-modules:gobblin-metadata")
  compile externalDependency.bcpgJdk15on
  compile externalDependency.bcprovJdk15on
  compile externalDependency.slf4j

  testCompile project(":gobblin-core-base") // for EncryptionConfigParser
  testCompile project(":gobblin-test-utils")
  testCompile externalDependency.testng
}

ext.classification="library"

task testJar(type: Jar, dependsOn: testClasses) {
  baseName = "test-${project.archivesBaseName}"
  from sourceSets.test.output
}

configurations {
  tests
}

artifacts {
  tests testJar
}

jmh {
  include = ""
  zip64 = true
  duplicateClassesStrategy = "EXCLUDE"
}
