public void You_can_make_data_available_to_child_operations(object input)
        {
            var childInputOperation = new FakeInputOperation <object>();
            var sut = new FakeOperation(childInputOperation);

            sut.ExecuteAction = () => sut.PublicPipeInputToChildOperations(input);

            sut.Execute();

            Assert.Equal(input, childInputOperation.ProvidedInput);
        }
        public void You_can_only_make_data_available_to_child_operations_during_execution(object input)
        {
            var sut = new FakeOperation();

            Assert.Throws <InvalidOperationException>(() => sut.PublicPipeInputToChildOperations(input));
        }