private async Task RefreshFileList() { this.FileList.Clear(); foreach (var file in await dropReference.EnumerateFilesAsync()) { var fileInfo = await file.ReadFileInfoAsync(); this.FileList.Add(fileInfo); } this.StateHasChanged(); }
async Task ShowFileInfo() { foreach (var file in await fileReaderReference.EnumerateFilesAsync()) { var fileInfo = await file.ReadFileInfoAsync(); AvatarFileInfoVM = new FileInfoViewModel(); AvatarFileInfoVM.Name = fileInfo.Name; AvatarFileInfoVM.Size = fileInfo.Size; AvatarFileInfoVM.Type = fileInfo.Type; } }
private async Task RefreshFileList() { FileList.Clear(); foreach (IFileReference file in await dropReference.EnumerateFilesAsync()) { IFileInfo fileInfo = await file.ReadFileInfoAsync(); FileList.Add(fileInfo); } StateHasChanged(); }
public void RunSchedule_ScheduleValidFile_GeneratesSchedule() { // Arrange RenderedComponent <RunScheduler> component = _host.AddComponent <RunScheduler>(); MemoryStream camperRequestStream = new MemoryStream(_validCamperRequestsBuffer); IFileReference camperRequestFile = Substitute.For <IFileReference>(); camperRequestFile.OpenReadAsync().Returns(camperRequestStream); IFileReaderRef fileReaderRef = Substitute.For <IFileReaderRef>(); fileReaderRef.EnumerateFilesAsync().Returns(new IFileReference[] { camperRequestFile }); _fileReaderService.CreateReference(Arg.Any <ElementReference>()).Returns(fileReaderRef); // Act - execute scheduler HtmlAgilityPack.HtmlNode runSchedulerButton = component.Find("button"); runSchedulerButton.Click(); // Assert file is loaded Assert.That(component.Instance.Output, Contains.Substring("Loaded 9 activity definitions from DefaultActivities"), "Messages after scheduling"); Assert.That(component.Instance.Output, Contains.Substring("Loaded 98 camper requests"), "Messages after scheduling"); Assert.That(component.Instance.Output, Contains.Substring("98 campers scheduled"), "Messages after scheduling"); }
private async Task RefreshFileList(IFileReaderRef reader, List <IFileInfo> list) { list.Clear(); foreach (var file in await reader.EnumerateFilesAsync()) { var fileInfo = await file.ReadFileInfoAsync(); list.Add(fileInfo); } this.StateHasChanged(); }
public async Task ReadFile(IFileReaderRef list) { imageName.Clear(); DeleteFiles(AppDataService.Instance.pathImageDirectory); Output = string.Empty; this.StateHasChanged(); var nl = Environment.NewLine; foreach (var file in await list.EnumerateFilesAsync()) { var fileInfo = await file.ReadFileInfoAsync(); Output += $"{nameof(IFileInfo)}.{nameof(fileInfo.Name)}: {fileInfo.Name}{nl}"; Output += $"{nameof(IFileInfo)}.{nameof(fileInfo.Size)}: {fileInfo.Size}{nl}"; Output += $"{nameof(IFileInfo)}.{nameof(fileInfo.Type)}: {fileInfo.Type}{nl}"; Output += $"{nameof(IFileInfo)}.{nameof(fileInfo.LastModifiedDate)}: {fileInfo.LastModifiedDate?.ToString() ?? "(N/A)"}{nl}"; Output += $"Reading file..."; this.StateHasChanged(); using (var fs = await file.OpenReadAsync()) { var bufferSize = 20480; var buffer = new byte[bufferSize]; int count; while ((count = await fs.ReadAsync(buffer, 0, buffer.Length)) != 0) { Output += $"Read {count} bytes. {fs.Position} / {fs.Length}{nl}"; this.StateHasChanged(); } Output += $"Done reading file {fileInfo.Name}{nl}."; } using (var ms = await file.CreateMemoryStreamAsync(2048)) { imageName.Add("file_" + DateTime.Now.ToFileTime().ToString() + "." + fileInfo.Type.Split('/')[1]); string path = Path.Combine(AppDataService.Instance.pathImageDirectory, imageName.Last()); FileStream fileStream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.ReadWrite, 2048, true); ms.WriteTo(fileStream); fileStream.Close(); ms.Close(); } } this.StateHasChanged(); Tesseract.DoAfterRecognise += ShowResults; Tesseract.DoAfterRecognise += AddBookAfterResult; Tesseract.Recognise(); }
public void RunSchedule_ScheduleOversubscribed_OutputsUnhappyCampers() { // Arrange RenderedComponent <RunScheduler> component = _host.AddComponent <RunScheduler>(); MemoryStream camperRequestStream = new MemoryStream(_overSubscribedCamperRequestsBuffer); IFileReference camperRequestFile = Substitute.For <IFileReference>(); camperRequestFile.OpenReadAsync().Returns(camperRequestStream); IFileReaderRef fileReaderRef = Substitute.For <IFileReaderRef>(); fileReaderRef.EnumerateFilesAsync().Returns(new IFileReference[] { camperRequestFile }); _fileReaderService.CreateReference(Arg.Any <ElementReference>()).Returns(fileReaderRef); // Act - execute scheduler HtmlAgilityPack.HtmlNode runSchedulerButton = component.Find("button"); runSchedulerButton.Click(); // Assert file is loaded Assert.That(component.Instance.Output, Contains.Substring("3 campers could not be scheduled"), "Messages after scheduling"); }
public static async Task <IReadOnlyDictionary <IFileInfo, byte[]> > ReadFilesAsync(IFileReaderRef list) { var files = new Dictionary <IFileInfo, byte[]>(); foreach (var file in await list.EnumerateFilesAsync()) { var fileInfo = await file.ReadFileInfoAsync(); using (var fileStream = await file.OpenReadAsync()) { if (fileStream.Length != 0) { var buffer = new byte[fileStream.Length]; await fileStream.ReadAsync(buffer, 0, buffer.Length); files.Add(fileInfo, buffer); } } } return(files); }
public void RunSchedule_ScheduleMissingActivityFile_IndicatesUnknownActivity() { // Arrange RenderedComponent <RunScheduler> component = _host.AddComponent <RunScheduler>(); MemoryStream camperRequestStream = new MemoryStream(_missingActivityCamperRequestsBuffer); IFileReference camperRequestFile = Substitute.For <IFileReference>(); camperRequestFile.OpenReadAsync().Returns(camperRequestStream); IFileReaderRef fileReaderRef = Substitute.For <IFileReaderRef>(); fileReaderRef.EnumerateFilesAsync().Returns(new IFileReference[] { camperRequestFile }); _fileReaderService.CreateReference(Arg.Any <ElementReference>()).Returns(fileReaderRef); // Act - execute scheduler HtmlAgilityPack.HtmlNode runSchedulerButton = component.Find("button"); runSchedulerButton.Click(); // Assert error message Assert.That(component.Instance.Output, Contains.Substring("requested unknown activity: 'Horseplay'"), "Messages after scheduling"); }