diff --git a/README.md b/README.md index c9e4f85..9eef043 100644 --- a/README.md +++ b/README.md @@ -81,7 +81,7 @@ Nor can you use the `withFileParameter` wrapper here. You can use Base64 parameters for passing _small_ files to downstream builds: ```groovy -build job: 'downstream', parameters: [base64File(name: 'file', base64: 'aGVsbG8=')] +build job: 'downstream', parameters: [base64File(name: 'file', base64: Base64.encoder.encodeToString('hello'.bytes)))] ``` ## LICENSE diff --git a/src/test/java/io/jenkins/plugins/file_parameters/AbstractFileParameterDefinitionTest.java b/src/test/java/io/jenkins/plugins/file_parameters/AbstractFileParameterDefinitionTest.java index cd48523..ab21c58 100644 --- a/src/test/java/io/jenkins/plugins/file_parameters/AbstractFileParameterDefinitionTest.java +++ b/src/test/java/io/jenkins/plugins/file_parameters/AbstractFileParameterDefinitionTest.java @@ -113,4 +113,16 @@ public class AbstractFileParameterDefinitionTest { r.assertLogContains("received null: null", b); } + @Test public void buildStep() throws Exception { + WorkflowJob us = r.createProject(WorkflowJob.class, "us"); + us.setDefinition(new CpsFlowDefinition("build job: 'ds', parameters: [base64File(name: 'FILE', base64: Base64.encoder.encodeToString('a message'.bytes))]", true)); + WorkflowJob ds = r.createProject(WorkflowJob.class, "ds"); + ds.addProperty(new ParametersDefinitionProperty(new Base64FileParameterDefinition("FILE"))); + ds.setDefinition(new CpsFlowDefinition("echo(/got ${new String(Base64.decoder.decode(FILE))}/)", true)); + r.buildAndAssertSuccess(us); + WorkflowRun b = ds.getBuildByNumber(1); + assertNotNull(b); + r.assertLogContains("got a message", b); + } + }