private void CheckCurrentOppositeEndPoints(params RealObjectEndPoint[] expected)
        {
            var loadState   = (CompleteCollectionEndPointLoadState)CollectionEndPointTestHelper.GetLoadState(_collectionEndPoint);
            var dataManager = (CollectionEndPointDataManager)loadState.DataManager;

            Assert.That(dataManager.CurrentOppositeEndPoints, Is.EquivalentTo(expected));
        }
        public void RegisterOriginalOppositeEndPoint_AlreadyRegistered()
        {
            var oppositeEndPoint = CollectionEndPointTestHelper.GetFakeOppositeEndPoint(_domainObject1);

            _dataManager.RegisterOriginalOppositeEndPoint(oppositeEndPoint);
            _dataManager.RegisterOriginalOppositeEndPoint(oppositeEndPoint);
        }
        public void ContainsOriginalOppositeEndPoint()
        {
            var oppositeEndPoint = CollectionEndPointTestHelper.GetFakeOppositeEndPoint(_domainObject1);

            Assert.That(_dataManager.ContainsOriginalOppositeEndPoint(oppositeEndPoint), Is.False);

            _dataManager.RegisterOriginalOppositeEndPoint(oppositeEndPoint);

            Assert.That(_dataManager.ContainsOriginalOppositeEndPoint(oppositeEndPoint), Is.True);
        }
        public void SortCurrentAndOriginalData()
        {
            _dataManager.RegisterOriginalOppositeEndPoint(CollectionEndPointTestHelper.GetFakeOppositeEndPoint(_domainObject3));
            _dataManager.RegisterOriginalOppositeEndPoint(CollectionEndPointTestHelper.GetFakeOppositeEndPoint(_domainObject1));
            _dataManager.RegisterOriginalOppositeEndPoint(CollectionEndPointTestHelper.GetFakeOppositeEndPoint(_domainObject2));

            _dataManager.SortCurrentAndOriginalData(_comparison123);

            Assert.That(_dataManager.CollectionData.ToArray(), Is.EqualTo(new[] { _domainObject1, _domainObject2, _domainObject3 }));
            Assert.That(_dataManager.OriginalCollectionData.ToArray(), Is.EqualTo(new[] { _domainObject1, _domainObject2, _domainObject3 }));
        }