From 702673ef826dfe4f72c02dd5176ff2a791c26f57 Mon Sep 17 00:00:00 2001 From: Aliaksandr Pinchuk Date: Tue, 13 May 2025 21:30:18 +0200 Subject: [PATCH 1/2] False positive diff for array with maxItems fix --- .../openapidiff/core/model/schema/ChangedMaxItems.java | 2 +- .../openapidiff/core/model/schema/ChangedMinItems.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java index 1ef3a498..56cb146f 100644 --- a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java +++ b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java @@ -17,7 +17,7 @@ public ChangedMaxItems(Integer oldValue, Integer newValue, DiffContext context) @Override public DiffResult isChanged() { - if (oldValue == newValue) { + if (Objects.equals(oldValue == newValue)) { return DiffResult.NO_CHANGES; } if (oldValue == null || newValue == null) { diff --git a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java index 3a3d4071..aae2a4a1 100644 --- a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java +++ b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java @@ -17,7 +17,7 @@ public ChangedMinItems(Integer oldValue, Integer newValue, DiffContext context) @Override public DiffResult isChanged() { - if (oldValue == newValue) { + if (Objects.equals(oldValue, newValue)) { return DiffResult.NO_CHANGES; } if (oldValue == null || newValue == null) { From 2387e6a410fb60bfcd8ba3ff8b7eff0c43daf727 Mon Sep 17 00:00:00 2001 From: Aliaksandr Pinchuk Date: Tue, 13 May 2025 21:44:00 +0200 Subject: [PATCH 2/2] fix: correct comparison logic in ChangedMaxItems and ChangedMinItems --- .../openapidiff/core/model/schema/ChangedMaxItems.java | 3 ++- .../openapidiff/core/model/schema/ChangedMinItems.java | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java index 56cb146f..a452adac 100644 --- a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java +++ b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMaxItems.java @@ -1,5 +1,6 @@ package org.openapitools.openapidiff.core.model.schema; +import java.util.Objects; import org.openapitools.openapidiff.core.model.Changed; import org.openapitools.openapidiff.core.model.DiffContext; import org.openapitools.openapidiff.core.model.DiffResult; @@ -17,7 +18,7 @@ public ChangedMaxItems(Integer oldValue, Integer newValue, DiffContext context) @Override public DiffResult isChanged() { - if (Objects.equals(oldValue == newValue)) { + if (Objects.equals(oldValue, newValue)) { return DiffResult.NO_CHANGES; } if (oldValue == null || newValue == null) { diff --git a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java index aae2a4a1..cb5604e7 100644 --- a/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java +++ b/core/src/main/java/org/openapitools/openapidiff/core/model/schema/ChangedMinItems.java @@ -1,5 +1,6 @@ package org.openapitools.openapidiff.core.model.schema; +import java.util.Objects; import org.openapitools.openapidiff.core.model.Changed; import org.openapitools.openapidiff.core.model.DiffContext; import org.openapitools.openapidiff.core.model.DiffResult;