private Replicated Find(ITestableReplicationProviderInside container, string name
                                )
        {
            IEnumerator storedObjects = container.GetStoredObjects(typeof(Replicated)).GetEnumerator
                                            ();
            int        resultCount = 0;
            Replicated result      = null;

            while (storedObjects.MoveNext())
            {
                Replicated replicated = (Replicated)storedObjects.Current;
                if (replicated == null)
                {
                    throw new Exception();
                }
                if (name.Equals(replicated.GetName()))
                {
                    result = replicated;
                    resultCount++;
                }
            }
            if (resultCount > 1)
            {
                Fail("At most one object with name " + name + " was expected.");
            }
            return(result);
        }
        private void DeleteObject(ITestableReplicationProviderInside container, string name
                                  )
        {
            Replicated obj = Find(container, name);

            container.Delete(obj);
        }
        private void ChangeObject(ITestableReplicationProviderInside container, string name
                                  , string newName)
        {
            Replicated obj = Find(container, name);

            if (obj == null)
            {
                return;
            }
            obj.SetName(newName);
            container.Update(obj);
            Out("CHANGED: " + container + ": " + name + " => " + newName + " - " + obj);
        }
        private void CheckName(ITestableReplicationProviderInside container, string name,
                               bool isExpected)
        {
            Out(string.Empty);
            Out(name + (isExpected ? " " : " NOT") + " expected in container " + ContainerName
                    (container));
            Replicated obj = Find(container, name);

            Out(checkNameCount.ToString());
            checkNameCount++;
            if (isExpected)
            {
                Assert.IsNotNull(obj, "Expecting: " + name + " in " + ContainerName(container));
            }
            else
            {
                Assert.IsNull(obj);
            }
        }
Esempio n. 5
0
        public virtual void Test()
        {
            Replicated obj1 = new Replicated("1");
            Replicated obj2 = new Replicated("2");
            Replicated obj3 = new Replicated("3");

            obj1.SetLink(obj2);
            obj2.SetLink(obj3);
            obj3.SetLink(obj1);
            _peerA.StoreNew(obj1);
            //_peerA.transientProviderSpecificStore(obj2);
            //_peerA.transientProviderSpecificStore(obj3);
            IReplicationSession replication = new GenericReplicationSession(_peerA, _peerB);

            replication.Replicate(obj1);
            Assert.IsTrue(_peerA.ActivatedObjects().Contains(obj1));
            Assert.IsTrue(_peerA.ActivatedObjects().Contains(obj2));
            Assert.IsTrue(_peerA.ActivatedObjects().Contains(obj3));
            _peerA = null;
            _peerB = null;
        }
Esempio n. 6
0
 /// <inheritdoc/>
 public void Normalize()
 {
     Replicated?.Normalize();
     Global?.Normalize();
 }