private async Task ProcessChangesListAsync(CacheManifest manifest) { var changeList = await GoogleDriveChanges.List(manifest.StartToken).Send(); foreach (var change in changeList.Changes) { if (!manifest.ContainsKey(change.FileId)) { continue; } var filePath = string.Concat(CacheDirPath, "/", manifest[change.FileId]); if (File.Exists(filePath)) { File.Delete(filePath); LogMessage($"File '{filePath}' has been changed; cached version has been purged."); } } if (!string.IsNullOrWhiteSpace(changeList.NextPageToken)) { manifest.StartToken = changeList.NextPageToken; await ProcessChangesListAsync(manifest); } IOUtils.WebGLSyncFs(); }
public IEnumerator Test999_ChangesList() { var request = GoogleDriveChanges.List(changesToken); yield return(request.Send()); Assert.IsFalse(request.IsError); Assert.IsTrue(request.ResponseData.Changes != null && request.ResponseData.Changes.Count > 0); Assert.IsTrue(request.ResponseData.Changes.Exists(c => c.FileId == createdFileId)); Assert.IsTrue(request.ResponseData.Changes.Exists(c => c.FileId == copiedFileId)); Assert.IsTrue(request.ResponseData.Changes.Find(c => c.FileId == createdFileId).Removed); Assert.IsTrue(request.ResponseData.Changes.Find(c => c.FileId == createdFileId).Removed); }