public void ShouldMerge()
        {
            var op      = new TestOperation();
            var otherOp = new TestOperation();

            op.Merge(otherOp);
            Assert.That(op.MergeCalled, Is.True);
            Assert.That(op.OtherOperation, Is.SameAs(otherOp));
        }
        public void ShouldMergeIfOtherOperationDisabled()
        {
            var op      = new TestOperation();
            var otherOp = new TestOperation
            {
                Disabled = true
            };

            op.Merge(otherOp);
            Assert.That(op.MergeCalled, Is.True);
        }
        public void ShouldNotMergeIfReceivingOperationDisabled()
        {
            var op = new TestOperation
            {
                Disabled = true
            };
            var otherOp = new TestOperation();

            op.Merge(otherOp);
            Assert.That(op.MergeCalled, Is.False);
        }