@Test public void shouldNotRemoveJunkFoldersWhenCleanUpIsCalled_hasOneMaterialUseBaseFolderReturnsTrue() throws Exception { File junkFolder = temporaryFolder.newFolder("junk-folder"); Materials materials = new Materials(); GitMaterial gitMaterial = new GitMaterial("http://some-url.com", "some-branch"); materials.add(gitMaterial); materials.cleanUp(temporaryFolder.getRoot(), mock(ConsoleOutputStreamConsumer.class)); assertThat(junkFolder.exists(), is(true)); temporaryFolder.delete(); }
@Test public void shouldRemoveJunkFoldersWhenCleanUpIsCalled_hasOneMaterialUseBaseFolderReturnsFalse() throws Exception { File junkFolder = temporaryFolder.newFolder("junk-folder"); Materials materials = new Materials(); GitMaterial gitMaterial = new GitMaterial("http://some-url.com", "some-branch", "some-folder"); materials.add(gitMaterial); materials.cleanUp(temporaryFolder.getRoot(), mock(ConsoleOutputStreamConsumer.class)); assertThat(junkFolder.exists(), is(false)); temporaryFolder.delete(); }
private void updateMaterials(Materials materials, Revision revision) { ProcessOutputStreamConsumer outputStreamConsumer = inMemoryConsumer(); TestSubprocessExecutionContext execCtx = new TestSubprocessExecutionContext(); materials.cleanUp(pipelineDir, outputStreamConsumer); for (Material material : materials) { material.updateTo(outputStreamConsumer, pipelineDir, new RevisionContext(revision), execCtx); } } }
private void prepareJob(AgentIdentifier agentIdentifier, SCMExtension scmExtension) { goPublisher.reportPreparing(); createWorkingDirectoryIfNotExist(workingDirectory); if (!assignment.shouldFetchMaterials()) { goPublisher.taggedConsumeLineWithPrefix(DefaultGoPublisher.PREP, "Skipping material update since stage is configured not to fetch materials"); return; } ConsoleOutputStreamConsumer consumer = new LabeledOutputStreamConsumer(DefaultGoPublisher.PREP, DefaultGoPublisher.PREP_ERR, processOutputStreamConsumer()); MaterialAgentFactory materialAgentFactory = new MaterialAgentFactory(consumer, workingDirectory, agentIdentifier, scmExtension); materialRevisions.getMaterials().cleanUp(workingDirectory, consumer); goPublisher.taggedConsumeLineWithPrefix(DefaultGoPublisher.PREP, "Start to update materials.\n"); for (MaterialRevision revision : materialRevisions.getRevisions()) { materialAgentFactory.createAgent(revision).prepare(); } }