Skip to content

Commit b1e7c82

Browse files
author
Tatsuya Niwa
committed
allow = in parameter values.
1 parent 02018d2 commit b1e7c82

2 files changed

Lines changed: 10 additions & 1 deletion

File tree

src/main/java/org/jenkinsci/plugins/parameterizedscheduler/ParameterParser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public Map<String, String> parse(String nameValuePairFormattedString) {
3434
//the default splitter message in this scenario is not user friendly, so snip a trailing semicolon
3535
clean = clean.substring(0, clean.length() - 1);
3636
}
37-
return Splitter.on(PAIR_SEPARATOR).trimResults().withKeyValueSeparator(NAME_VALUE_SEPARATOR).split(clean);
37+
return Splitter.on(PAIR_SEPARATOR).trimResults().withKeyValueSeparator(Splitter.on(NAME_VALUE_SEPARATOR).limit(2)).split(clean);
3838
}
3939

4040
public String checkSanity(String cronTabSpec, ParametersDefinitionProperty parametersDefinitionProperty) {

src/test/java/org/jenkinsci/plugins/parameterizedscheduler/ParameterParserTest.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,15 @@ public void test_TwoParamsStringWithSpaceReturns_emptyMap() {
9191
assertEquals(expected, testObject.parse("name2=value2; name=value"));
9292
}
9393

94+
@Test
95+
public void test_ValueContainsEquals_emptyMap() {
96+
ParameterParser testObject = new ParameterParser();
97+
98+
HashMap<String, String> expected = new HashMap<String, String>();
99+
expected.put("name", "value=contains=equals");
100+
assertEquals(expected, testObject.parse("name=value=contains=equals"));
101+
}
102+
94103
@Test
95104
public void checkSanity_HappyPath() throws Exception {
96105
ParameterParser testObject = new ParameterParser();

0 commit comments

Comments
 (0)