public void WhenAddingProtoIsFailed_ThenResultShouldBeFailureAndNotHandledAndContainsErrorMessage() { // Arrange var fileName = "fileName"; var textReader = Substitute.For <TextReader>(); var expectedMessage = Messages.FileCanNotBeAddedToDescriptor(fileName); _fileDescriptorSet.Add(fileName, true, textReader).Returns(false); // Act var result = _sut.Read(fileName, textReader); // Assert Assert.True(result.IsFailure); Assert.True(result.IsNotHandled); Assert.Equal(expectedMessage, result.Message); _fileDescriptorSet.Received().Add(fileName, true, textReader); }
public IResult Read(string fileName, TextReader proto) { try { var isSuccess = _fileDescriptorSet.Add(fileName, true, proto); return(isSuccess ? Result.Success(Messages.FileHasBeenAddedToDescriptor(fileName)) : Result.Failure(Messages.FileCanNotBeAddedToDescriptor(fileName))); } catch (Exception e) { return(Result.Failure(e.Message)); } }