### Question:
ModularityOptimizationMutateProc extends MutatePropertyProc<ModularityOptimization, ModularityOptimization, ModularityOptimizationMutateProc.MutateResult, ModularityOptimizationMutateConfig> { @Procedure(value = "gds.beta.modularityOptimization.mutate.estimate", mode = READ) @Description(ESTIMATE_DESCRIPTION) public Stream<MemoryEstimateResult> mutateEstimate( @Name(value = "graphName") Object graphNameOrConfig, @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration ) { return computeEstimate(graphNameOrConfig, configuration); }  @Procedure(value = "gds.beta.modularityOptimization.mutate", mode = READ) @Description(MODULARITY_OPTIMIZATION_DESCRIPTION) Stream<MutateResult> mutate(
        @Name(value = "graphName") Object graphNameOrConfig,
        @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
    ); @Procedure(value = "gds.beta.modularityOptimization.mutate.estimate", mode = READ) @Description(ESTIMATE_DESCRIPTION) Stream<MemoryEstimateResult> mutateEstimate(
        @Name(value = "graphName") Object graphNameOrConfig,
        @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
    );  }### Answer:
@Test void testMutateEstimate() { String query = explicitAlgoBuildStage() .estimationMode(MUTATE) .addParameter("mutateProperty", mutateProperty()) .yields(); runQueryWithRowConsumer(query, (row) -> { assertTrue(row.getNumber("bytesMin").longValue() > 0); assertTrue(row.getNumber("bytesMax").longValue() > 0); }); }