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); } }
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; }
/// <inheritdoc/> public void Normalize() { Replicated?.Normalize(); Global?.Normalize(); }