public async Task GenerateEncryptedFile(string key, string path) { // Arrange // https://github.com/jbogard/MediatR/issues/526#issue-645312126 IRequestHandler <EncryptFiles> sut = new EncryptFilesHandler(_console, _loggerMock.Object); var inputFile = new FileInfo(Path.Combine(_tempDirectory.FullName, path)); var encryptedFile = new FileInfo($"{inputFile.FullName}.aes"); // Act await sut.Handle(new EncryptFiles { Source = inputFile, Target = null, Key = key, EncryptToBase64 = true, ForceOverwrite = true }, default); encryptedFile.Refresh(); // Assert Assert.True(encryptedFile.Exists, $"Could not find expected file '{encryptedFile.FullName}'."); var content = await File.ReadAllTextAsync(encryptedFile.FullName); Assert.True(IsBase64String(content), "File content is not a Base64-encoded string."); }
public async Task HandlerEncryptsDirectory(string key) { // Arrange // https://github.com/jbogard/MediatR/issues/526#issue-645312126 IRequestHandler <EncryptFiles> handler = new EncryptFilesHandler(_console, _loggerMock.Object); // Act await handler.Handle(new EncryptFiles { Source = _tempDirectory, Target = _targetDirectory, Key = key, EncryptToBase64 = true, ForceOverwrite = true }, default); _targetDirectory.Refresh(); // Assert Assert.NotEmpty(_targetDirectory.GetFiles()); }