Skip to content

Commit 81e98e4

Browse files
committed
fix: [CI-8053]: remove uuid
1 parent 3a81f7b commit 81e98e4

File tree

2 files changed

+29
-1
lines changed

2 files changed

+29
-1
lines changed

953-yaml-commons/src/main/java/io/harness/pms/yaml/YamlUtils.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -718,14 +718,19 @@ private boolean checkIfSiblingHasDefaultValue(FQN currentNodeFqn, Map<FQN, Objec
718718

719719
private void removeUuidInObject(JsonNode node) {
720720
ObjectNode objectNode = (ObjectNode) node;
721+
List<String> removalKeyList = new ArrayList<>();
721722
for (Iterator<Entry<String, JsonNode>> it = objectNode.fields(); it.hasNext();) {
722723
Entry<String, JsonNode> field = it.next();
723724
if (field.getKey().equals(YamlNode.UUID_FIELD_NAME)) {
724-
objectNode.remove(field.getKey());
725+
removalKeyList.add(field.getKey());
725726
} else {
726727
removeUuid(field.getValue());
727728
}
728729
}
730+
731+
for (String key : removalKeyList) {
732+
objectNode.remove(key);
733+
}
729734
}
730735

731736
private void removeUuidInArray(JsonNode node) {

953-yaml-commons/src/test/java/io/harness/pms/yaml/YamlUtilsTest.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import static io.harness.annotations.dev.HarnessTeam.PIPELINE;
1111
import static io.harness.rule.OwnerRule.ARCHIT;
1212
import static io.harness.rule.OwnerRule.BRIJESH;
13+
import static io.harness.rule.OwnerRule.DEV_MITTAL;
1314
import static io.harness.rule.OwnerRule.PRASHANTSHARMA;
1415
import static io.harness.rule.OwnerRule.SAHIL;
1516

@@ -24,7 +25,9 @@
2425
import io.harness.rule.Owner;
2526
import io.harness.rule.OwnerRule;
2627

28+
import com.fasterxml.jackson.databind.ObjectMapper;
2729
import com.fasterxml.jackson.databind.exc.MismatchedInputException;
30+
import com.fasterxml.jackson.databind.node.ObjectNode;
2831
import com.google.api.client.util.Charsets;
2932
import com.google.common.io.Resources;
3033
import java.io.IOException;
@@ -878,4 +881,24 @@ public void testDuplicateField() {
878881
assertThatCode(() -> YamlUtils.readTree(valid, true)).doesNotThrowAnyException();
879882
assertThatCode(() -> YamlUtils.readTree(valid)).doesNotThrowAnyException();
880883
}
884+
885+
@Test
886+
@Owner(developers = DEV_MITTAL)
887+
@Category(UnitTests.class)
888+
public void testRemoveUuid() {
889+
ObjectMapper mapper = new ObjectMapper();
890+
ObjectNode stepElementConfig = mapper.createObjectNode();
891+
892+
stepElementConfig.put("a", "a");
893+
stepElementConfig.put("b", "b");
894+
stepElementConfig.put("c", "c");
895+
YamlUtils.removeUuid(stepElementConfig);
896+
897+
stepElementConfig.put(YamlNode.UUID_FIELD_NAME, "d");
898+
YamlUtils.removeUuid(stepElementConfig);
899+
900+
stepElementConfig.put(YamlNode.UUID_FIELD_NAME, "d");
901+
stepElementConfig.put("e", "e");
902+
YamlUtils.removeUuid(stepElementConfig);
903+
}
881904
}

0 commit comments

Comments
 (0)