/* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ plugins { id 'java-library' id "io.freefair.lombok" id 'jacoco' } repositories { mavenCentral() } dependencies { implementation project(':core') implementation project(':protocol') implementation group: 'org.opensearch', name: 'opensearch', version: "${opensearch_version}" implementation group: 'org.opensearch', name: 'opensearch-x-content', version: "${opensearch_version}" implementation group: 'org.opensearch', name: 'common-utils', version: "${opensearch_build}" implementation group: 'commons-io', name: 'commons-io', version: '2.8.0' implementation 'com.amazonaws:aws-encryption-sdk-java:2.4.0' testImplementation group: 'junit', name: 'junit', version: '4.13.2' testImplementation('org.junit.jupiter:junit-jupiter:5.6.2') testImplementation group: 'net.bytebuddy', name: 'byte-buddy-agent', version: '1.12.13' testImplementation group: 'org.hamcrest', name: 'hamcrest-library', version: '2.1' testImplementation group: 'org.mockito', name: 'mockito-core', version: '5.2.0' testImplementation group: 'org.mockito', name: 'mockito-junit-jupiter', version: '5.2.0' testImplementation 'org.junit.jupiter:junit-jupiter:5.6.2' } test { useJUnitPlatform() testLogging { events "passed", "skipped", "failed" exceptionFormat "full" } } jacocoTestReport { reports { html.enabled true xml.enabled true } afterEvaluate { classDirectories.setFrom(files(classDirectories.files.collect { fileTree(dir: it) })) } } test.finalizedBy(project.tasks.jacocoTestReport) jacocoTestCoverageVerification { violationRules { rule { element = 'CLASS' excludes = [ 'org.opensearch.sql.datasources.settings.DataSourceSettings', 'org.opensearch.sql.datasources.exceptions.*', 'org.opensearch.sql.datasources.model.*', 'org.opensearch.sql.datasources.rest.*' ] limit { counter = 'LINE' minimum = 1.0 } limit { counter = 'BRANCH' minimum = 0.9 } } } afterEvaluate { classDirectories.setFrom(files(classDirectories.files.collect { fileTree(dir: it) })) } } check.dependsOn jacocoTestCoverageVerification jacocoTestCoverageVerification.dependsOn jacocoTestReport