< Summary

Information
Class: CounterpointCollective.Dataflow.Encapsulation.AbstractEncapsulatedPropagatorBlock<T1, T2>
Assembly: Dataflow.Fluent
File(s): /builds/counterpointcollective/composabledataflowblocks/Source/Dataflow.Fluent/Dataflow/Encapsulation/EncapsulatedPropagatorBlock.cs
Line coverage
100%
Covered lines: 4
Uncovered lines: 0
Coverable lines: 4
Total lines: 29
Line coverage: 100%
Branch coverage
100%
Covered branches: 2
Total branches: 2
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_CompleteSide()100%11100%
OfferMessage(...)100%22100%

File(s)

/builds/counterpointcollective/composabledataflowblocks/Source/Dataflow.Fluent/Dataflow/Encapsulation/EncapsulatedPropagatorBlock.cs

#LineLine coverage
 1using System.Threading.Tasks.Dataflow;
 2
 3namespace CounterpointCollective.Dataflow.Encapsulation
 4{
 5    /// <exclude />
 6    public abstract class AbstractEncapsulatedPropagatorBlock<I, O>: AbstractEncapsulatedSourceBlock<O>, IPropagatorBloc
 7    {
 8        protected abstract ITargetBlock<I> TargetSide { get; }
 9
 5410        protected override IDataflowBlock CompleteSide => TargetSide;
 11
 12        public DataflowMessageStatus OfferMessage(
 13            DataflowMessageHeader messageHeader,
 14            I messageValue,
 15            ISourceBlock<I>? source,
 16            bool consumeToAccept
 17        )
 18        {
 22265819            if (Completion.IsCompleted)
 20            {
 421                return DataflowMessageStatus.DecliningPermanently;
 22            }
 23            else
 24            {
 22265425                return TargetSide.OfferMessage(messageHeader, messageValue, source, consumeToAccept);
 26            }
 27        }
 28    }
 29}