Skip to content

Commit fe4c531

Browse files
committed
[no-ticket] [Java/Local] visual-java: do not include ignore regions outside of image
1 parent d4ae0aa commit fe4c531

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

visual-java/src/main/java/com/saucelabs/visual/VisualApi.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -659,11 +659,18 @@ private void sauceVisualCheckLocal(String snapshotName, CheckOptions options) {
659659
}
660660
}
661661

662+
List<RegionIn> visibleIgnoreRegions = new ArrayList<>();
662663
for (RegionIn region : ignoreRegions) {
663-
Point newPoint =
664-
CartesianHelpers.relativeTo(viewport.getPoint(), new Point(region.getX(), region.getY()));
665-
region.setX(newPoint.x);
666-
region.setY(newPoint.y);
664+
Rectangle regionRect =
665+
new Rectangle(region.getX(), region.getY(), region.getHeight(), region.getWidth());
666+
667+
if (CartesianHelpers.intersect(regionRect, viewport).isPresent()) {
668+
Point newPoint = CartesianHelpers.relativeTo(viewport.getPoint(), new Point(region.getX(), region.getY()));
669+
region.setX(newPoint.x);
670+
region.setY(newPoint.y);
671+
672+
visibleIgnoreRegions.add(region);
673+
}
667674
}
668675

669676
// upload dom if present / enabled
@@ -701,7 +708,7 @@ private void sauceVisualCheckLocal(String snapshotName, CheckOptions options) {
701708
.withSuiteName(getOrInferSuiteName(options))
702709
.withDiffingMethod(toDiffingMethod(options))
703710
.withDiffingOptions(options.getDiffingOptions())
704-
.withIgnoreRegions(ignoreRegions)
711+
.withIgnoreRegions(visibleIgnoreRegions)
705712
.withDiffingMethodSensitivity(
706713
Optional.ofNullable(getDiffingMethodSensitivity(options))
707714
.map(DiffingMethodSensitivity::asGraphQLType)

0 commit comments

Comments
 (0)