From 8baa9329d92be5aff3dcd12b9fedecba66b8391b Mon Sep 17 00:00:00 2001 From: "slav.babanin" Date: Fri, 17 Oct 2025 12:41:47 -0700 Subject: [PATCH 1/7] Add support for delete and update operations without filters. HIBERNATE-130 --- .../query/AbstractQueryIntegrationTests.java | 17 ++++ .../mutation/DeletionIntegrationTests.java | 23 +++++ .../mutation/UpdatingIntegrationTests.java | 87 +++++++++++++++++++ .../translate/AbstractMqlTranslator.java | 21 +++-- .../mongoast/filter/AstEmptyFilter.java | 32 +++++++ .../filter/AstFieldOperationFilter.java | 2 + 6 files changed, 175 insertions(+), 7 deletions(-) create mode 100644 src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java diff --git a/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java b/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java index 19ee1e81..b3df77d2 100644 --- a/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java +++ b/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java @@ -187,6 +187,23 @@ protected void assertActualCommand(BsonDocument expectedCommand) { .containsAllEntriesOf(expectedCommand); } + protected void assertMutationQuery( + String hql, + int expectedMutationCount, + String expectedMql, + MongoCollection collection, + Iterable expectedDocuments, + Set expectedAffectedCollections) { + assertMutationQuery( + hql, + mutationQuery -> {}, + expectedMutationCount, + expectedMql, + collection, + expectedDocuments, + expectedAffectedCollections); + } + protected void assertMutationQuery( String hql, Consumer queryPostProcessor, diff --git a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/DeletionIntegrationTests.java b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/DeletionIntegrationTests.java index 7e4f1faf..fc1ad05d 100644 --- a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/DeletionIntegrationTests.java +++ b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/DeletionIntegrationTests.java @@ -16,6 +16,8 @@ package com.mongodb.hibernate.query.mutation; +import static java.util.Collections.emptyList; + import com.mongodb.client.MongoCollection; import com.mongodb.hibernate.junit.InjectMongoCollection; import com.mongodb.hibernate.query.AbstractQueryIntegrationTests; @@ -193,4 +195,25 @@ void testDeletionWithZeroMutationCount() { """)), Set.of(Book.COLLECTION_NAME)); } + + @Test + void testDeleteNoFilter() { + assertMutationQuery( + "delete from Book", + 5, + """ + { + "delete": "books", + "deletes": [ + { + "q": {}, + "limit": 0 + } + ] + } + """, + mongoCollection, + emptyList(), + Set.of(Book.COLLECTION_NAME)); + } } diff --git a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java index 8cf65b05..85330748 100644 --- a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java +++ b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java @@ -228,4 +228,91 @@ void testUpdateWithZeroMutationCount() { """)), Set.of(Book.COLLECTION_NAME)); } + + @Test + void testUpdateNoFilter() { + assertMutationQuery( + "update Book set title = :newTitle", + q -> q.setParameter("newTitle", "Uknkown"), + 5, + """ + { + "update": "books", + "updates": [ + { + "multi": true, + "q": {}, + "u": { + "$set": { + "title": "Uknkown" + } + } + } + ] + } + """, + mongoCollection, + List.of( + BsonDocument.parse( + """ + { + "_id": 1, + "title": "Uknkown", + "outOfStock": true, + "publishYear": 1869, + "isbn13": null, + "discount": null, + "price": null + } + """), + BsonDocument.parse( + """ + { + "_id": 2, + "title": "Uknkown", + "outOfStock": false, + "publishYear": 1866, + "isbn13": null, + "discount": null, + "price": null + } + """), + BsonDocument.parse( + """ + { + "_id": 3, + "title": "Uknkown", + "outOfStock": false, + "publishYear": 1877, + "isbn13": null, + "discount": null, + "price": null + } + """), + BsonDocument.parse( + """ + { + "_id": 4, + "title": "Uknkown", + "outOfStock": false, + "publishYear": 1880, + "isbn13": null, + "discount": null, + "price": null + } + """), + BsonDocument.parse( + """ + { + "_id": 5, + "title": "Uknkown", + "outOfStock": false, + "publishYear": 2025, + "isbn13": null, + "discount": null, + "price": null + } + """)), + Set.of(Book.COLLECTION_NAME)); + } } diff --git a/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java b/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java index bfe9af3d..5aecaa42 100644 --- a/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java +++ b/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java @@ -74,6 +74,7 @@ import com.mongodb.hibernate.internal.translate.mongoast.command.aggregate.AstStage; import com.mongodb.hibernate.internal.translate.mongoast.filter.AstComparisonFilterOperation; import com.mongodb.hibernate.internal.translate.mongoast.filter.AstComparisonFilterOperator; +import com.mongodb.hibernate.internal.translate.mongoast.filter.AstEmptyFilter; import com.mongodb.hibernate.internal.translate.mongoast.filter.AstFieldOperationFilter; import com.mongodb.hibernate.internal.translate.mongoast.filter.AstFilter; import com.mongodb.hibernate.internal.translate.mongoast.filter.AstLogicalFilter; @@ -169,6 +170,7 @@ import org.hibernate.sql.ast.tree.predicate.LikePredicate; import org.hibernate.sql.ast.tree.predicate.NegatedPredicate; import org.hibernate.sql.ast.tree.predicate.NullnessPredicate; +import org.hibernate.sql.ast.tree.predicate.Predicate; import org.hibernate.sql.ast.tree.predicate.SelfRenderingPredicate; import org.hibernate.sql.ast.tree.predicate.ThruthnessPredicate; import org.hibernate.sql.ast.tree.select.QueryGroup; @@ -302,7 +304,7 @@ public void visitStandardTableDelete(TableDeleteStandard tableDelete) { if (tableDelete.getWhereFragment() != null) { throw new FeatureNotSupportedException(); } - var keyFilter = getKeyFilter(tableDelete); + var keyFilter = createKeyFilter(tableDelete); astVisitorValueHolder.yield( MODEL_MUTATION_RESULT, ModelMutationMqlTranslator.Result.create( @@ -318,7 +320,7 @@ public void visitStandardTableUpdate(TableUpdateStandard tableUpdate) { if (tableUpdate.getWhereFragment() != null) { throw new FeatureNotSupportedException(); } - var keyFilter = getKeyFilter(tableUpdate); + var keyFilter = createKeyFilter(tableUpdate); var updates = new ArrayList(tableUpdate.getNumberOfValueBindings()); for (var valueBinding : tableUpdate.getValueBindings()) { var fieldName = valueBinding.getColumnReference().getColumnExpression(); @@ -332,7 +334,7 @@ public void visitStandardTableUpdate(TableUpdateStandard tableUpdate) { parameterBinders)); } - private AstFilter getKeyFilter(AbstractRestrictedTableMutation tableMutation) { + private AstFilter createKeyFilter(AbstractRestrictedTableMutation tableMutation) { if (tableMutation.getNumberOfOptimisticLockBindings() > 0) { throw new FeatureNotSupportedException("TODO-HIBERNATE-51 https://jira.mongodb.org/browse/HIBERNATE-51"); } @@ -521,7 +523,7 @@ public void visitRelationalPredicate(ComparisonPredicate comparisonPredicate) { var operator = isFieldOnLeftHandSide ? comparisonPredicate.getOperator() : comparisonPredicate.getOperator().invert(); - var astComparisonFilterOperator = getAstComparisonFilterOperator(operator); + var astComparisonFilterOperator = createAstComparisonFilterOperator(operator); var astFilterOperation = new AstComparisonFilterOperation(astComparisonFilterOperator, comparisonValue); var filter = new AstFieldOperationFilter(fieldPath, astFilterOperation); @@ -671,7 +673,7 @@ public void visitTuple(SqlTuple sqlTuple) { public void visitDeleteStatement(DeleteStatement deleteStatement) { checkMutationStatementSupportability(deleteStatement); var collection = addToAffectedTableNames(deleteStatement.getTargetTable()); - var filter = acceptAndYield(deleteStatement.getRestriction(), FILTER); + var filter = createAstFilter(deleteStatement); astVisitorValueHolder.yield( MUTATION_RESULT, @@ -683,7 +685,7 @@ public void visitDeleteStatement(DeleteStatement deleteStatement) { public void visitUpdateStatement(UpdateStatement updateStatement) { checkMutationStatementSupportability(updateStatement); var collection = addToAffectedTableNames(updateStatement.getTargetTable()); - var filter = acceptAndYield(updateStatement.getRestriction(), FILTER); + var filter = createAstFilter(updateStatement); var assignments = updateStatement.getAssignments(); var fieldUpdates = new ArrayList(assignments.size()); @@ -711,6 +713,11 @@ private String addToAffectedTableNames(NamedTableReference tableRef) { return collection; } + private AstFilter createAstFilter(final AbstractUpdateOrDeleteStatement updateOrDeleteStatement) { + Predicate restriction = updateOrDeleteStatement.getRestriction(); + return restriction == null ? new AstEmptyFilter() : acceptAndYield(restriction, FILTER); + } + @Override public void visitInsertStatement(InsertSelectStatement insertStatement) { checkMutationStatementSupportability(insertStatement); @@ -1071,7 +1078,7 @@ private static void checkQueryOptionsSupportability(QueryOptions queryOptions) { } } - private static AstComparisonFilterOperator getAstComparisonFilterOperator(ComparisonOperator operator) { + private static AstComparisonFilterOperator createAstComparisonFilterOperator(ComparisonOperator operator) { return switch (operator) { case EQUAL -> EQ; case NOT_EQUAL -> NE; diff --git a/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java new file mode 100644 index 00000000..0c6e47ee --- /dev/null +++ b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java @@ -0,0 +1,32 @@ +/* + * Copyright 2025-present MongoDB, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.mongodb.hibernate.internal.translate.mongoast.filter; + +import org.bson.BsonWriter; + +/** + * Matches all documents. + * + * @see AstFieldOperationFilter for specifying a concrete filter to match documents. + */ +public record AstEmptyFilter() implements AstFilter { + @Override + public void render(BsonWriter writer) { + writer.writeStartDocument(); + writer.writeEndDocument(); + } +} diff --git a/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstFieldOperationFilter.java b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstFieldOperationFilter.java index e35d92ed..cfa36cd9 100644 --- a/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstFieldOperationFilter.java +++ b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstFieldOperationFilter.java @@ -21,6 +21,8 @@ /** * See query predicate, * Query Documents. + * + * @see AstEmptyFilter */ public record AstFieldOperationFilter(String fieldPath, AstFilterOperation filterOperation) implements AstFilter { @Override From 9dfa4eb3f450dac8a23569579833fd9b1be81014 Mon Sep 17 00:00:00 2001 From: "slav.babanin" Date: Fri, 17 Oct 2025 12:55:57 -0700 Subject: [PATCH 2/7] Add unit test. HIBERNATE-130 --- .../mongoast/filter/AstEmptyFilterTest.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java diff --git a/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java b/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java new file mode 100644 index 00000000..6edfea2b --- /dev/null +++ b/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java @@ -0,0 +1,31 @@ +/* + * Copyright 2025-present MongoDB, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.mongodb.hibernate.internal.translate.mongoast.filter; + +import static com.mongodb.hibernate.internal.translate.mongoast.AstNodeAssertions.assertRendering; + +import org.junit.jupiter.api.Test; + +class AstEmptyFilterTests { + + @Test + void testRendering() { + var astFieldOperationFilter = new AstEmptyFilter(); + var expectedJson = "{}"; + assertRendering(expectedJson, astFieldOperationFilter); + } +} From c2480e38d629c19a1c64b74851c5c9cf5e120641 Mon Sep 17 00:00:00 2001 From: Viacheslav Babanin Date: Tue, 21 Oct 2025 14:04:11 -0700 Subject: [PATCH 3/7] Update src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java Co-authored-by: Valentin Kovalenko --- .../hibernate/internal/translate/AbstractMqlTranslator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java b/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java index e1b64c5f..901985b8 100644 --- a/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java +++ b/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java @@ -717,7 +717,7 @@ private String addToAffectedTableNames(NamedTableReference tableRef) { } private AstFilter createAstFilter(final AbstractUpdateOrDeleteStatement updateOrDeleteStatement) { - Predicate restriction = updateOrDeleteStatement.getRestriction(); + var restriction = updateOrDeleteStatement.getRestriction(); return restriction == null ? new AstEmptyFilter() : acceptAndYield(restriction, FILTER); } From a53beccdbb4837207ae2ce2fbb595aa33dc5a69c Mon Sep 17 00:00:00 2001 From: "slav.babanin" Date: Tue, 21 Oct 2025 14:20:27 -0700 Subject: [PATCH 4/7] Use singleton for empty filter. --- .../hibernate/query/AbstractQueryIntegrationTests.java | 2 +- .../query/mutation/UpdatingIntegrationTests.java | 2 +- .../internal/translate/AbstractMqlTranslator.java | 2 +- .../translate/mongoast/filter/AstEmptyFilter.java | 8 ++++++-- .../translate/mongoast/filter/AstEmptyFilterTest.java | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java b/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java index b3df77d2..50f17d57 100644 --- a/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java +++ b/src/integrationTest/java/com/mongodb/hibernate/query/AbstractQueryIntegrationTests.java @@ -196,7 +196,7 @@ protected void assertMutationQuery( Set expectedAffectedCollections) { assertMutationQuery( hql, - mutationQuery -> {}, + null, expectedMutationCount, expectedMql, collection, diff --git a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java index baa35dea..e990dcc1 100644 --- a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java +++ b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java @@ -235,7 +235,7 @@ void testUpdateWithZeroMutationCount() { void testUpdateNoFilter() { assertMutationQuery( "update Book set title = :newTitle", - q -> q.setParameter("newTitle", "Uknkown"), + q -> q.setParameter("newTitle", "Unknown"), 5, """ { diff --git a/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java b/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java index 901985b8..6bfb898d 100644 --- a/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java +++ b/src/main/java/com/mongodb/hibernate/internal/translate/AbstractMqlTranslator.java @@ -718,7 +718,7 @@ private String addToAffectedTableNames(NamedTableReference tableRef) { private AstFilter createAstFilter(final AbstractUpdateOrDeleteStatement updateOrDeleteStatement) { var restriction = updateOrDeleteStatement.getRestriction(); - return restriction == null ? new AstEmptyFilter() : acceptAndYield(restriction, FILTER); + return restriction == null ? AstEmptyFilter.INSTANCE : acceptAndYield(restriction, FILTER); } @Override diff --git a/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java index 0c6e47ee..aef56255 100644 --- a/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java +++ b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java @@ -21,9 +21,13 @@ /** * Matches all documents. * - * @see AstFieldOperationFilter for specifying a concrete filter to match documents. + * {@link AstFieldOperationFilter} is used for specifying a concrete filter to match documents. */ -public record AstEmptyFilter() implements AstFilter { +public final class AstEmptyFilter implements AstFilter { + public static final AstEmptyFilter INSTANCE = new AstEmptyFilter(); + + private AstEmptyFilter() {} + @Override public void render(BsonWriter writer) { writer.writeStartDocument(); diff --git a/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java b/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java index 6edfea2b..b48bdb5b 100644 --- a/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java +++ b/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java @@ -24,7 +24,7 @@ class AstEmptyFilterTests { @Test void testRendering() { - var astFieldOperationFilter = new AstEmptyFilter(); + var astFieldOperationFilter = AstEmptyFilter.INSTANCE; var expectedJson = "{}"; assertRendering(expectedJson, astFieldOperationFilter); } From 9f10fb4d1c56f646a13a5cdd4a2ea9a62588afa8 Mon Sep 17 00:00:00 2001 From: "slav.babanin" Date: Tue, 21 Oct 2025 14:32:06 -0700 Subject: [PATCH 5/7] Apply spotless. --- .../internal/translate/mongoast/filter/AstEmptyFilter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java index aef56255..c166a301 100644 --- a/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java +++ b/src/main/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilter.java @@ -21,7 +21,7 @@ /** * Matches all documents. * - * {@link AstFieldOperationFilter} is used for specifying a concrete filter to match documents. + *

{@link AstFieldOperationFilter} is used for specifying a concrete filter to match documents. */ public final class AstEmptyFilter implements AstFilter { public static final AstEmptyFilter INSTANCE = new AstEmptyFilter(); From 452e81c616bbd2369fdf37b1e65173de1b5803d7 Mon Sep 17 00:00:00 2001 From: "slav.babanin" Date: Tue, 21 Oct 2025 14:36:10 -0700 Subject: [PATCH 6/7] Use Unknown consistently. --- .../query/mutation/UpdatingIntegrationTests.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java index e990dcc1..ea6bac63 100644 --- a/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java +++ b/src/integrationTest/java/com/mongodb/hibernate/query/mutation/UpdatingIntegrationTests.java @@ -246,7 +246,7 @@ void testUpdateNoFilter() { "q": {}, "u": { "$set": { - "title": "Uknkown" + "title": "Unknown" } } } @@ -259,7 +259,7 @@ void testUpdateNoFilter() { """ { "_id": 1, - "title": "Uknkown", + "title": "Unknown", "outOfStock": true, "publishYear": 1869, "isbn13": null, @@ -271,7 +271,7 @@ void testUpdateNoFilter() { """ { "_id": 2, - "title": "Uknkown", + "title": "Unknown", "outOfStock": false, "publishYear": 1866, "isbn13": null, @@ -283,7 +283,7 @@ void testUpdateNoFilter() { """ { "_id": 3, - "title": "Uknkown", + "title": "Unknown", "outOfStock": false, "publishYear": 1877, "isbn13": null, @@ -295,7 +295,7 @@ void testUpdateNoFilter() { """ { "_id": 4, - "title": "Uknkown", + "title": "Unknown", "outOfStock": false, "publishYear": 1880, "isbn13": null, @@ -307,7 +307,7 @@ void testUpdateNoFilter() { """ { "_id": 5, - "title": "Uknkown", + "title": "Unknown", "outOfStock": false, "publishYear": 2025, "isbn13": null, From 7deff20dd23000a63285f71a8a724b6730edb58b Mon Sep 17 00:00:00 2001 From: Viacheslav Babanin Date: Wed, 22 Oct 2025 12:54:50 -0700 Subject: [PATCH 7/7] Update src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java Co-authored-by: Valentin Kovalenko --- .../translate/mongoast/filter/AstEmptyFilterTest.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java b/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java index b48bdb5b..d626f57c 100644 --- a/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java +++ b/src/test/java/com/mongodb/hibernate/internal/translate/mongoast/filter/AstEmptyFilterTest.java @@ -24,8 +24,6 @@ class AstEmptyFilterTests { @Test void testRendering() { - var astFieldOperationFilter = AstEmptyFilter.INSTANCE; - var expectedJson = "{}"; - assertRendering(expectedJson, astFieldOperationFilter); + assertRendering("{}", AstEmptyFilter.INSTANCE); } }