public Result <IEnumerable <TagStat> > Parse(string pathToWords, string pathToBoringWords = null) { var wordsResult = generalWordsReader.ReadFrom(pathToWords) .AppendToErrorFromLeft($"Can't read words from \"{pathToWords}\":\n"); if (!wordsResult.IsSuccess) { return(Result.Fail <IEnumerable <TagStat> >(wordsResult.Error)); } var boringWordsResult = string.IsNullOrEmpty(pathToBoringWords) ? Result.Ok(new HashSet <string>()) : generalWordsReader.ReadFrom(pathToBoringWords) .Then(readWords => new HashSet <string>(readWords)) .AppendToErrorFromLeft($"Can't read boring words from \"{pathToBoringWords}\":\n"); return(boringWordsResult.IsSuccess ? wordsProcessor.Process(wordsResult.Value, boringWordsResult.Value, settings.MaxUniqueWordsCount) : Result.Fail <IEnumerable <TagStat> >(boringWordsResult.Error)); }
public void ReturnError_WhenCantFindReaderForParticularFileExtension() { generalWordsReader.ReadFrom("file.with_wrong_format").IsSuccess.Should().BeFalse(); }