package hudson.plugins.tfs.commands; import static org.mockito.Mockito.*; import java.io.IOException; import java.io.PrintStream; import com.microsoft.tfs.core.clients.versioncontrol.events.GetEvent; import hudson.remoting.Callable; import org.junit.Ignore; import org.junit.Test; public class GetFilesToWorkFolderCommandTest extends AbstractCallableCommandTest { @Ignore("Finish test when we have MockableWorkspace and MockableVersionControlEventEngine") @Test public void assertLogging() throws Exception { when(vcc.queryWorkspace( isA(String.class), isA(String.class))).thenReturn(null); final GetFilesToWorkFolderCommand command = new GetFilesToWorkFolderCommand(server, "c:/jenkins/jobs/newJob/workspace", "C618"); final Callable<Void, Exception> callable = command.getCallable(); callable.call(); assertLog( "Getting version 'C618' to 'c:/jenkins/jobs/newJob/workspace'...", "Finished getting version 'C618'." ); } @Test public void onGet_typical() throws IOException { final GetEvent getEvent = mock(GetEvent.class); final String pathToFile = "C:\\.jenkins\\jobs\\typical\\workspace\\TODO.txt"; when(getEvent.getTargetLocalItem()).thenReturn(pathToFile); final GetFilesToWorkFolderCommand cut = new GetFilesToWorkFolderCommand(server, null, null, true); cut.setLogger(new PrintStream(this.outputStream)); cut.onGet(getEvent); assertLog( pathToFile ); } @Override protected AbstractCallableCommand createCommand(final ServerConfigurationProvider serverConfig) { return new GetFilesToWorkFolderCommand(serverConfig, "workFolder", "versionSpec"); } }