diff --git a/tests/yamlparser/job_fixtures/parameter_name_reuse_default.xml b/tests/yamlparser/job_fixtures/parameter_name_reuse_default.xml new file mode 100644 index 000000000..b6a176d01 --- /dev/null +++ b/tests/yamlparser/job_fixtures/parameter_name_reuse_default.xml @@ -0,0 +1,20 @@ + + + + <!-- Managed by Jenkins Job Builder --> + false + false + false + false + true + + + + + echo {timer} + + + + + + diff --git a/tests/yamlparser/job_fixtures/parameter_name_reuse_default.yaml b/tests/yamlparser/job_fixtures/parameter_name_reuse_default.yaml new file mode 100644 index 000000000..f875c5752 --- /dev/null +++ b/tests/yamlparser/job_fixtures/parameter_name_reuse_default.yaml @@ -0,0 +1,13 @@ +# Attempt to use same parameter name in it's value leads to value with format string. + +- job-template: + name: sample-job + timer: '{timer}' + builders: + - shell: | + echo {timer} + +- project: + name: sample-project + jobs: + - sample-job diff --git a/tests/yamlparser/job_fixtures/parameter_name_reuse_group_override.xml b/tests/yamlparser/job_fixtures/parameter_name_reuse_group_override.xml new file mode 100644 index 000000000..b1183307a --- /dev/null +++ b/tests/yamlparser/job_fixtures/parameter_name_reuse_group_override.xml @@ -0,0 +1,20 @@ + + + + <!-- Managed by Jenkins Job Builder --> + false + false + false + false + true + + + + + echo {param}-a-a + + + + + + diff --git a/tests/yamlparser/job_fixtures/parameter_name_reuse_group_override.yaml b/tests/yamlparser/job_fixtures/parameter_name_reuse_group_override.yaml new file mode 100644 index 000000000..e6b5f2574 --- /dev/null +++ b/tests/yamlparser/job_fixtures/parameter_name_reuse_group_override.yaml @@ -0,0 +1,22 @@ +# Override parameter value while reusing it's name in value +# This leads to incorrect parameter expansion: +# Result is '{param}-a-a'. + +- job-template: + name: sample-job + param: '{param}-b' + builders: + - shell: | + echo {param} + +- job-group: + name: sample-group + jobs: + - sample-job: + param: '{param}-a' + +- project: + name: sample-project + param: value + jobs: + - sample-group diff --git a/tests/yamlparser/job_fixtures/parameter_name_reuse_override.xml b/tests/yamlparser/job_fixtures/parameter_name_reuse_override.xml new file mode 100644 index 000000000..809344511 --- /dev/null +++ b/tests/yamlparser/job_fixtures/parameter_name_reuse_override.xml @@ -0,0 +1,20 @@ + + + + <!-- Managed by Jenkins Job Builder --> + false + false + false + false + true + + + + + echo value + + + + + + diff --git a/tests/yamlparser/job_fixtures/parameter_name_reuse_override.yaml b/tests/yamlparser/job_fixtures/parameter_name_reuse_override.yaml new file mode 100644 index 000000000..fb614d06e --- /dev/null +++ b/tests/yamlparser/job_fixtures/parameter_name_reuse_override.yaml @@ -0,0 +1,14 @@ +# Override parameter value while reusing it's name in value + +- job-template: + name: sample-job + param: '{param}-b' + builders: + - shell: | + echo {param} + +- project: + name: sample-project + param: value + jobs: + - sample-job