package forklift.consumer; import java.io.File; import java.io.IOException; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; import org.mockito.Mockito; import com.google.common.io.Files; import forklift.ForkliftTest; import forklift.deployment.Deployment; import forklift.deployment.DeploymentWatch; @RunWith(JUnit4.class) public class ConsumerDeploymentEventsTest extends ForkliftTest { @Test public void consumerDeployEvent() throws IOException { final ConsumerDeploymentEvents events = Mockito.mock(ConsumerDeploymentEvents.class); final File deployDir = Files.createTempDir(); final DeploymentWatch watch = new DeploymentWatch(deployDir, events); File deployFile = File.createTempFile("test", ".jar", deployDir); deployFile.deleteOnExit(); Files.copy(ForkliftTest.testJar(), deployFile); watch.run(); Mockito.verify(events).onDeploy(Mockito.any(Deployment.class)); deployFile.delete(); watch.run(); Mockito.verify(events).onUndeploy(Mockito.any(Deployment.class)); } }