< Summary

Information
Class: IceRpc.FeaturePipelineExtensions
Assembly: IceRpc
File(s): /home/runner/work/icerpc-csharp/icerpc-csharp/src/IceRpc/FeaturePipelineExtensions.cs
Tag: 275_13775359185
Line coverage
100%
Covered lines: 5
Uncovered lines: 0
Coverable lines: 5
Total lines: 22
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage
100%
Covered methods: 1
Total methods: 1
Method coverage: 100%

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
UseFeature(...)100%11100%

File(s)

/home/runner/work/icerpc-csharp/icerpc-csharp/src/IceRpc/FeaturePipelineExtensions.cs

#LineLine coverage
 1// Copyright (c) ZeroC, Inc.
 2
 3using IceRpc.Features;
 4
 5namespace IceRpc;
 6
 7/// <summary>Provides an extension method for <see cref="Pipeline" /> to add an interceptor that sets a feature in all
 8/// requests.</summary>
 9public static class FeaturePipelineExtensions
 10{
 11    /// <summary>Adds an interceptor that sets a feature in all requests.</summary>
 12    /// <typeparam name="TFeature">The type of the feature.</typeparam>
 13    /// <param name="pipeline">The pipeline being configured.</param>
 14    /// <param name="feature">The value of the feature to set.</param>
 15    /// <returns>The pipeline being configured.</returns>
 16    public static Pipeline UseFeature<TFeature>(this Pipeline pipeline, TFeature feature) =>
 417        pipeline.Use(next => new InlineInvoker((request, cancellationToken) =>
 218        {
 219            request.Features = request.Features.With(feature);
 220            return next.InvokeAsync(request, cancellationToken);
 621        }));
 22}