package org.netbeans.gradle.model.java; import java.io.File; import java.io.IOException; import org.gradle.tooling.ProjectConnection; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; import org.netbeans.gradle.model.util.ProjectConnectionTask; import org.netbeans.gradle.model.util.TestUtils; import org.netbeans.gradle.model.util.ZipUtils; import static org.junit.Assert.*; import static org.netbeans.gradle.model.java.InfoQueries.*; public final class CodeCoverageTest { private static final String ROOT_NAME = "jacoco-project"; private static File tempFolder = null; private static File testedProjectDir = null; @BeforeClass public static void setUpClass() throws IOException { tempFolder = ZipUtils.unzipResourceToTemp(MultiLevelJavaProjectTest.class, "jacoco-project.zip"); testedProjectDir = new File(tempFolder, ROOT_NAME); } @AfterClass public static void tearDownClass() throws IOException { if (tempFolder != null) { ZipUtils.recursiveDelete(tempFolder); } } private void runTestForSubProject(String projectName, ProjectConnectionTask task) { TestUtils.runTestForSubProject(testedProjectDir, projectName, task); } @Test public void testJacoco() { runTestForSubProject("", new ProjectConnectionTask() { public void doTask(ProjectConnection connection) throws Exception { JacocoModel jacocoModel = fetchSingleProjectInfo(connection, JavaModelBuilders.JACOCO_BUILDER); assertNotNull("JacocoModel", jacocoModel); } }); } }