### Question:
LocalClusteringCoefficientStatsProc extends StatsProc<LocalClusteringCoefficient, LocalClusteringCoefficient.Result, LocalClusteringCoefficientStatsProc.StatsResult, LocalClusteringCoefficientStatsConfig> { @Procedure(value = "gds.localClusteringCoefficient.stats", mode = READ) @Description(STATS_DESCRIPTION) public Stream<StatsResult> stats( @Name(value = "graphName") Object graphNameOrConfig, @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration ) { return stats(compute(graphNameOrConfig, configuration)); }  @Procedure(value = "gds.localClusteringCoefficient.stats", mode = READ) @Description(STATS_DESCRIPTION) Stream<StatsResult> stats(
        @Name(value = "graphName") Object graphNameOrConfig,
        @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
    ); @Procedure(value = "gds.localClusteringCoefficient.stats.estimate", mode = READ) @Description(ESTIMATE_DESCRIPTION) Stream<MemoryEstimateResult> estimateStats(
        @Name(value = "graphName") Object graphNameOrConfig,
        @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
    );  }### Answer:
@Test void testStats() { var query = "CALL gds.localClusteringCoefficient.stats('g')"; assertCypherResult(query, List.of(Map.of( "averageClusteringCoefficient", closeTo(expectedAverageClusteringCoefficient() / 5, 1e-10), "nodeCount", 5L, "createMillis", greaterThan(-1L), "computeMillis", greaterThan(-1L), "postProcessingMillis", greaterThan(-1L), "configuration", isA(Map.class) ))); }