diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/aggregation/AccumulatorOperators.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/aggregation/AccumulatorOperators.java
index ebbdaef20..d1a7c01a1 100644
--- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/aggregation/AccumulatorOperators.java
+++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/aggregation/AccumulatorOperators.java
@@ -213,6 +213,20 @@ public class AccumulatorOperators {
return new Sum(append(expression));
}
+ /**
+ * Creates new {@link Sum} with all previously added arguments appending the given one.
+ * NOTE: Only possible in {@code $project} stage.
+ *
+ * @param value the value to add.
+ * @return new instance of {@link Sum}.
+ * @since 2.2
+ */
+ public Sum and(Number value) {
+
+ Assert.notNull(value, "Value must not be null!");
+ return new Sum(append(value));
+ }
+
/* (non-Javadoc)
* @see org.springframework.data.mongodb.core.aggregation.AccumulatorOperators.AbstractAggregationExpression#toDocument(java.lang.Object, org.springframework.data.mongodb.core.aggregation.AggregationOperationContext)
*/
diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/aggregation/ProjectionOperationUnitTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/aggregation/ProjectionOperationUnitTests.java
index 32a1f6bc1..12f850987 100755
--- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/aggregation/ProjectionOperationUnitTests.java
+++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/aggregation/ProjectionOperationUnitTests.java
@@ -127,7 +127,7 @@ public class ProjectionOperationUnitTests {
ProjectionOperationBuilder operation = new ProjectionOperation().and(fieldName).plus(1);
Document document = operation.toDocument(Aggregation.DEFAULT_CONTEXT);
Document projectClause = DocumentTestUtils.getAsDocument(document, PROJECT);
- Document oper = exctractOperation(fieldName, projectClause);
+ Document oper = extractOperation(fieldName, projectClause);
assertThat(oper.containsKey(ADD)).isTrue();
assertThat(oper.get(ADD)).isEqualTo(Arrays.