/** * Invokes the local build pipeline. * @param buildRequest the buildRequest configures the build to perform. * @return the pipeline output. */ public LocalBinaryConfig invokeLocalBuildPipeLine(LocalBuildRequest buildRequest) { final LocalBinaryConfig[] result = new LocalBinaryConfig[1]; invokeLocalBuildPipeLine(buildRequest, localBinaryConfig -> { result[0] = localBinaryConfig; }); return result[0]; }
private void invokeLocalBuildPipeLine(Module module, Consumer<LocalBinaryConfig> consumer) { BuildPipelineInvoker.LocalBuildRequest buildRequest = BuildPipelineInvoker.LocalBuildRequest.newFullBuildRequest(module); buildPipelineInvoker.invokeLocalBuildPipeLine(buildRequest, consumer); }
private void invokeLocalBuildPipeLine(Module module, LocalBuildConfig.BuildType buildType, Path resource, Consumer<LocalBinaryConfig> consumer) { BuildPipelineInvoker.LocalBuildRequest buildRequest = BuildPipelineInvoker.LocalBuildRequest.newIncrementalBuildRequest(module, buildType, resource); buildPipelineInvoker.invokeLocalBuildPipeLine(buildRequest, consumer); }
private void invokeLocalBuildPipeLine(Module module, Map<Path, Collection<ResourceChange>> resourceChanges, Consumer<LocalBinaryConfig> consumer) { BuildPipelineInvoker.LocalBuildRequest buildRequest = BuildPipelineInvoker.LocalBuildRequest.newIncrementalBuildRequest(module, resourceChanges); buildPipelineInvoker.invokeLocalBuildPipeLine(buildRequest, consumer); }
private void preparePipelineInvocation(BuildPipelineInvoker.LocalBuildRequest buildRequest) { //emulate the pipeline invocation with the desired params. doAnswer(new Answer<Void>() { public Void answer(InvocationOnMock invocation) { Consumer consumer = (Consumer) invocation.getArguments()[1]; consumer.accept(localBinaryConfig); return null; } }).when(pipelineInvoker).invokeLocalBuildPipeLine(eq(buildRequest), any(Consumer.class)); } }
private void verifyBuildAndDeploy(BuildResults result) { assertEquals(buildResults, result); verify(pipelineInvoker, times(1)).invokeLocalBuildPipeLine(eq(expectedRequest), any(Consumer.class)); }
private void invokeLocalBuildPipeLine(Module module, boolean suppressHandlers, DeploymentMode mode, Consumer<LocalBinaryConfig> consumer) { deploymentVerifier.verifyWithException(module, mode); BuildPipelineInvoker.LocalBuildRequest buildRequest = BuildPipelineInvoker.LocalBuildRequest.newFullBuildAndDeployRequest(module, toDeploymentType(mode), suppressHandlers); buildPipelineInvoker.invokeLocalBuildPipeLine(buildRequest, consumer); }
@Test public void testLocalBuild() { prepareLocalFullBuild(); when(localBinaryConfig.getBuildResults()).thenReturn(buildResults); BuildResults result = serviceHelper.localBuild(module); assertEquals(buildResults, result); verify(pipelineInvoker, times(1)).invokeLocalBuildPipeLine(eq(expectedRequest), any(Consumer.class)); }
@Test public void testLocalBuildWithConsumer() { prepareLocalFullBuild(); serviceHelper.localBuild(module, new Consumer<LocalBinaryConfig>() { @Override public void accept(LocalBinaryConfig result) { // the returned result should the same as the localBinaryConfig produced by the PipelineInvoker. assertEquals(localBinaryConfig, result); } }); verify(pipelineInvoker, times(1)).invokeLocalBuildPipeLine(eq(expectedRequest), any(Consumer.class)); }
private void testLocalBuildWithResource(Module module, LocalBuildConfig.BuildType buildType, Path resource) { BuildPipelineInvoker.LocalBuildRequest buildRequest = BuildPipelineInvoker.LocalBuildRequest.newIncrementalBuildRequest(module, buildType, resource); preparePipelineInvocation(buildRequest); when(localBinaryConfig.getIncrementalBuildResults()).thenReturn(incrementalBuildResults); IncrementalBuildResults result = serviceHelper.localBuild(module, buildType, resource); assertEquals(incrementalBuildResults, result); verify(pipelineInvoker, times(1)).invokeLocalBuildPipeLine(eq(buildRequest), any(Consumer.class)); }
private void testFullBuildAndDeployRequest(LocalBuildConfig.DeploymentType deploymentType) { when(buildRequest.getBuildType()).thenReturn(LocalBuildConfig.BuildType.FULL_BUILD_AND_DEPLOY); when(buildRequest.getDeploymentType()).thenReturn(deploymentType); when(buildRequest.isSuppressHandlers()).thenReturn(false); // the pipeline should be invoked with this input. input = createFullBuildAndDeployInput(ROOT_PATH_URI, deploymentType.name(), false); preparePipeline(input); LocalBinaryConfig result = pipelineInvoker.invokeLocalBuildPipeLine(buildRequest); verifyPipelineInvocation(localBinaryConfig, result); }
@Test public void testLocalBuildWithResourceChanges() { BuildPipelineInvoker.LocalBuildRequest buildRequest = BuildPipelineInvoker.LocalBuildRequest.newIncrementalBuildRequest(module, resourceChanges); preparePipelineInvocation(buildRequest); when(localBinaryConfig.getIncrementalBuildResults()).thenReturn(incrementalBuildResults); IncrementalBuildResults result = serviceHelper.localBuild(module, resourceChanges); assertEquals(incrementalBuildResults, result); verify(pipelineInvoker, times(1)).invokeLocalBuildPipeLine(eq(buildRequest), any(Consumer.class)); }
private void testIncrementalBuildResourceRequest(LocalBuildConfig.BuildType buildType, Path resource) { when(buildRequest.getBuildType()).thenReturn(buildType); when(buildRequest.getResource()).thenReturn(resource); when(buildRequest.isSingleResource()).thenReturn(true); // the pipeline should be invoked with this input. input = createIncrementalBuildInput(ROOT_PATH_URI, RESOURCE_URI_1, buildType.name()); preparePipeline(input); LocalBinaryConfig result = pipelineInvoker.invokeLocalBuildPipeLine(buildRequest); verifyPipelineInvocation(localBinaryConfig, result); }
@Test public void testFullBuildRequest() { when(buildRequest.getBuildType()).thenReturn(LocalBuildConfig.BuildType.FULL_BUILD); // the pipeline should be invoked with this input. input = createFullBuildInput(ROOT_PATH_URI); preparePipeline(input); LocalBinaryConfig result = pipelineInvoker.invokeLocalBuildPipeLine(buildRequest); verifyPipelineInvocation(localBinaryConfig, result); }
@Test public void testIncrementalBuildResourceChanges() { Map<Path, Collection<ResourceChange>> resourceChanges = createResourceChanges(changes); when(buildRequest.getBuildType()).thenReturn(LocalBuildConfig.BuildType.INCREMENTAL_BATCH_CHANGES); when(buildRequest.isSingleResource()).thenReturn(false); when(buildRequest.getResourceChanges()).thenReturn(resourceChanges); // the pipeline should be invoked with this input. input = createBatchChangesInput(ROOT_PATH_URI, LocalBuildConfig.BuildType.INCREMENTAL_BATCH_CHANGES.name(), changes); preparePipeline(input); LocalBinaryConfig result = pipelineInvoker.invokeLocalBuildPipeLine(buildRequest); verifyPipelineInvocation(localBinaryConfig, result); }