public void WillRemoveThePendingMoveFromTheSegment()
            {
                var ranges = master.Join(endPoint);

                var range = ranges.First();

                Assert.NotNull(range.InProcessOfMovingToEndpoint);

                master.GaveUp(endPoint, ReplicationType.Ownership, range.Index);

                Assert.Null(range.InProcessOfMovingToEndpoint);
            }
 private void HandleGaveUp(MasterMessageUnion wrapper,
                           MessageStreamWriter <MasterMessageUnion> writer)
 {
     master.GaveUp(new NodeEndpoint
     {
         Async = new Uri(wrapper.GaveUp.Endpoint.Async),
         Sync  = new Uri(wrapper.GaveUp.Endpoint.Sync)
     },
                   wrapper.GaveUp.Type == ReplicationType.Backup ? Internal.ReplicationType.Backup : Internal.ReplicationType.Ownership,
                   wrapper.GaveUp.GaveUpSegmentsList.ToArray());
     writer.Write(new MasterMessageUnion.Builder
     {
         Type = MasterMessageType.GaveUpResponse
     }.Build());
 }