< Summary

Information
Class: CounterpointCollective.Dataflow.Encapsulation.EncapsulatedTargetBlock<T>
Assembly: Dataflow.Fluent
File(s): /builds/counterpointcollective/composabledataflowblocks/Source/Dataflow.Fluent/Dataflow/Encapsulation/EncapsulatedTargetBlock.cs
Line coverage
66%
Covered lines: 2
Uncovered lines: 1
Coverable lines: 3
Total lines: 23
Line coverage: 66.6%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
get_CompletionSide()100%210%
get_TargetSide()100%11100%

File(s)

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

#LineLine coverage
 1using System.Threading.Tasks.Dataflow;
 2
 3namespace CounterpointCollective.Dataflow.Encapsulation
 4{
 5    /// <exclude />
 16    public sealed class EncapsulatedTargetBlock<T>(ITargetBlock<T> targetSide, IDataflowBlock completionSide)
 7        : AbstractEncapsulatedTargetBlock<T>, ITargetBlock<T>
 8    {
 09        protected override IDataflowBlock CompletionSide => completionSide;
 10
 111        protected override ITargetBlock<T> TargetSide => targetSide;
 12    }
 13
 14    /// <exclude />
 15    public abstract class AbstractEncapsulatedTargetBlock<T> : AbstractEncapsulatedDataflowBlock, ITargetBlock<T>
 16    {
 17        protected abstract ITargetBlock<T> TargetSide { get; }
 18
 19        protected override IDataflowBlock CompleteSide => TargetSide;
 20        public DataflowMessageStatus OfferMessage(DataflowMessageHeader messageHeader, T messageValue, ISourceBlock<T>? 
 21            => TargetSide.OfferMessage(messageHeader, messageValue, source, consumeToAccept);
 22    }
 23}