public void InputIsAddedAsDependency() { var input = 10.AsPipelineConstant(); var sut = new DetachablePipelineStage <int>(input); PipelineAssert.DependentOn(sut, input); }
public void DetachableStagePropagatesInvalidatesWhileNotDetached() { var sut = new DetachablePipelineStage <int>(1.AsPipelineConstant()); var test = sut.AttachTestStage(); sut.Invalidate(); test.AssertInvalidations(1); }
public void DetachableStageNoLongerPropagatesInvalidateAfterBeingDetached() { var sut = new DetachablePipelineStage <int>(1.AsPipelineConstant()); var test = sut.AttachTestStage(); sut.Invalidate(); test.AssertInvalidations(1); sut.DetachFromPipeline(); test.AssertInvalidations(1); sut.Invalidate(); sut.Invalidate(); sut.Invalidate(); test.AssertInvalidations(1); }
public void DetachableStagePassesPreviousStagesValueThrough(int i) { var sut = new DetachablePipelineStage <int>(i.AsPipelineConstant()); PipelineAssert.Value(sut, i); }