public static string SyncOutlookToCalDav_EventsExistsInCalDav(string existingEventData, IEntityRelationDataAccess <string, DateTime, Uri, string> entityRelationDataAccess = null) { string roundTrippedData = null; ICalDavDataAccess calDavDataAccess = MockRepository.GenerateMock <ICalDavDataAccess>(); var entityUri = new Uri("/e1", UriKind.Relative); calDavDataAccess .Expect(r => r.GetEvents(null)) .IgnoreArguments() .Return(Task.FromResult <IReadOnlyList <EntityIdWithVersion <Uri, string> > > ( new[] { EntityIdWithVersion.Create(entityUri, "v1") })); calDavDataAccess .Expect(r => r.GetEntities(Arg <ICollection <Uri> > .List.Equal(new[] { entityUri }))) .Return(Task.FromResult <IReadOnlyList <EntityWithVersion <Uri, string> > > ( new[] { EntityWithVersion.Create(entityUri, existingEventData) })); calDavDataAccess .Expect(r => r.UpdateEntity(new Uri("http://bla.com"), null)) .IgnoreArguments() .Return(Task.FromResult <EntityIdWithVersion <Uri, string> > ( EntityIdWithVersion.Create(new Uri("http://bla.com"), "blubb"))) .WhenCalled(a => { roundTrippedData = (string)a.Arguments[1]; }); ISynchronizer synchronizer = OutlookTestContext.CreateEventSynchronizer( SynchronizationMode.ReplicateOutlookIntoServer, calDavDataAccess, entityRelationDataAccess); WaitForTask(synchronizer.Synchronize()); return(roundTrippedData); }
public static void SyncCalDavToOutlook(string eventData, IEntityRelationDataAccess <string, DateTime, WebResourceName, string> entityRelationDataAccess) { var calDavDataAccess = MockRepository.GenerateMock <ICalDavDataAccess>(); var entityUri = new WebResourceName("/e1"); calDavDataAccess .Expect(r => r.GetEventVersions(null)) .IgnoreArguments() .Return(Task.FromResult <IReadOnlyList <EntityVersion <WebResourceName, string> > > ( new[] { EntityVersion.Create(entityUri, "v1") })); calDavDataAccess .Expect(r => r.GetEntities(Arg <ICollection <WebResourceName> > .List.Equal(new[] { entityUri }))) .Return(Task.FromResult <IReadOnlyList <EntityWithId <WebResourceName, string> > > ( new[] { EntityWithId.Create(entityUri, eventData) })); var synchronizer = OutlookTestContext.CreateEventSynchronizer( SynchronizationMode.ReplicateServerIntoOutlook, calDavDataAccess, entityRelationDataAccess); WaitForTask(synchronizer.SynchronizeNoThrow(NullSynchronizationLogger.Instance)); }
public static string SyncOutlookToCalDav_EventsExistsInCalDav(string existingEventData, IEntityRelationDataAccess <AppointmentId, DateTime, WebResourceName, string> entityRelationDataAccess = null) { string roundTrippedData = null; ICalDavDataAccess calDavDataAccess = MockRepository.GenerateMock <ICalDavDataAccess>(); var entityUri = new WebResourceName("/e1"); calDavDataAccess .Expect(r => r.GetEventVersions(null)) .IgnoreArguments() .Return(Task.FromResult <IReadOnlyList <EntityVersion <WebResourceName, string> > > ( new[] { EntityVersion.Create(entityUri, "v1") })); calDavDataAccess .Expect(r => r.GetEntities(Arg <ICollection <WebResourceName> > .List.Equal(new[] { entityUri }))) .Return(Task.FromResult <IReadOnlyList <EntityWithId <WebResourceName, string> > > ( new[] { EntityWithId.Create(entityUri, existingEventData) })); calDavDataAccess .Expect(r => r.TryUpdateEntity( new WebResourceName("http://bla.com"), null, null)) .IgnoreArguments() .Return(Task.FromResult <EntityVersion <WebResourceName, string> > ( EntityVersion.Create(new WebResourceName("http://bla.com"), "blubb"))) .WhenCalled(a => { roundTrippedData = (string)a.Arguments[2]; }); var synchronizer = OutlookTestContext.CreateEventSynchronizer( SynchronizationMode.ReplicateOutlookIntoServer, calDavDataAccess, entityRelationDataAccess); WaitForTask(synchronizer.SynchronizeNoThrow(NullSynchronizationLogger.Instance)); return(roundTrippedData); }