package hudson.plugins.testabilityexplorer.publisher; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.stub; import org.apache.commons.lang.SystemUtils; import org.testng.annotations.Test; import hudson.FilePath; import hudson.model.AbstractBuild; import hudson.model.AbstractProject; import hudson.plugins.testabilityexplorer.PluginBaseTest; import hudson.tasks.Publisher; import java.io.File; import java.io.IOException; import java.util.GregorianCalendar; /** * Tests against the {@link Publisher} interface. * * @author reik.schatz */ @Test public class PublisherTest extends PluginBaseTest { public void testPublisher() throws IOException, InterruptedException { AbstractBuild<?, ?> build = createBuild(15, GregorianCalendar.getInstance()); File root = SystemUtils.getJavaIoTmpDir(); FilePath rootPath = new FilePath(root); final AbstractProject<?, ?> project = mock(AbstractProject.class); stub(project.getRootDir()).toReturn(root); stub(project.getModuleRoot()).toReturn(rootPath); Publisher publisher = new FreestylePublisher("reports.xml", "","", "100", "10") { protected AbstractProject getProject(AbstractBuild build) { return project; } }; publisher.perform(build, null, null); } }