diff --git a/core/src/main/java/org/jenkins/ui/symbol/Symbol.java b/core/src/main/java/org/jenkins/ui/symbol/Symbol.java index ebb8bbce9b..2dca039d8e 100644 --- a/core/src/main/java/org/jenkins/ui/symbol/Symbol.java +++ b/core/src/main/java/org/jenkins/ui/symbol/Symbol.java @@ -94,7 +94,6 @@ public final class Symbol { .replaceAll("(class=\").*?(\")", "") .replaceAll("(tooltip=\").*?(\")", "") .replaceAll("(data-html-tooltip=\").*?(\")", "") - .replaceAll("(id=\").*?(\")", "") .replace("stroke:#000", "stroke:currentColor"); } diff --git a/core/src/test/java/org/jenkins/ui/symbol/SymbolTest.java b/core/src/test/java/org/jenkins/ui/symbol/SymbolTest.java index 095663ac28..022fe9873d 100644 --- a/core/src/test/java/org/jenkins/ui/symbol/SymbolTest.java +++ b/core/src/test/java/org/jenkins/ui/symbol/SymbolTest.java @@ -13,6 +13,7 @@ import java.nio.charset.StandardCharsets; import org.apache.commons.io.IOUtils; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; +import org.jvnet.hudson.test.Issue; public class SymbolTest { public static final String SCIENCE_PATH; @@ -190,4 +191,15 @@ public class SymbolTest { assertThat(symbol, containsString(SCIENCE_PATH)); assertThat(symbol, not(containsString("tooltip"))); } + + @Test + @DisplayName("IDs in symbol should not be removed") + @Issue("JENKINS-70730") + void getSymbol_idInSymbolIsPresent() { + String symbol = Symbol.get(new SymbolRequest.Builder() + .withId("some-random-id") + .withName("with-id").build()); + + assertThat(symbol, containsString("id=\"a\"")); + } } diff --git a/core/src/test/resources/images/symbols/with-id.svg b/core/src/test/resources/images/symbols/with-id.svg new file mode 100644 index 0000000000..3f08bf374b --- /dev/null +++ b/core/src/test/resources/images/symbols/with-id.svg @@ -0,0 +1,14 @@ + + + + + + + + +