Exemple #1
0
        public PullFilesScenario()
        {
            initializeInput();

            FilesClientMock.Setup(m => m.GetFilesAsync(It.Is <string>(s => string.Compare(this.testTableName, s) == 0),
                                                       It.Is <string>(s => string.Compare(this.testRecordId, s) == 0)))
            .Returns(() => Task.FromResult <IEnumerable <MobileServiceFile> >(testFiles));

            FileMetadataStoreMock.Setup(m => m.GetFileMetadataAsync(It.IsAny <string>()))
            .Returns <string>(id => Task.FromResult(testMetadata.FirstOrDefault(m => string.Compare(m.FileId, id) == 0)));

            FileMetadataStoreMock.Setup(m => m.GetMetadataAsync(It.IsAny <string>(), It.IsAny <string>()))
            .Returns <string, string>((table, id) => Task.FromResult <IEnumerable <MobileServiceFileMetadata> >(testMetadata.ToList()));

            FileMetadataStoreMock.Setup(m => m.CreateOrUpdateAsync(It.IsAny <MobileServiceFileMetadata>()))
            .Callback <MobileServiceFileMetadata>(m =>
            {
                if (!testMetadata.Any(tm => string.Compare(tm.FileId, m.FileId) == 0))
                {
                    testMetadata.Add(m);
                }
            })
            .Returns(Task.FromResult(0));

            FileMetadataStoreMock.Setup(m => m.DeleteAsync(It.IsAny <MobileServiceFileMetadata>()))
            .Callback <MobileServiceFileMetadata>(m =>
            {
                MobileServiceFileMetadata metadata = testMetadata.FirstOrDefault(tm => string.Compare(tm.FileId, m.FileId) == 0);

                if (metadata != null)
                {
                    testMetadata.Remove(metadata);
                }
            })
            .Returns(Task.FromResult(0));

            SyncContext.PullFilesAsync("testtable", "id").Wait();
        }
Exemple #2
0
 public void FileMetadataIsCreatedWithExpectedPropertyValues()
 {
     FileMetadataStoreMock.Verify(s => s.CreateOrUpdateAsync(It.Is <MobileServiceFileMetadata>(m => IsMetadataValid(m))), Times.Once());
 }