public IDictionary <char, string[]> BuildDictionaryForCategory(AlliterationPart part, AlliterationCategory category) { var path = this.wordListPathConfigurationProvider .GetPathForPartAndCategory(part, category); var words = this.wordFileReader.ReadLines(path); var lookup = words.ToLookup(word => char.ToUpper(word[0])); return(lookup.ToDictionary(grouping => grouping.Key, grouping => grouping.ToArray())); }
public string GetPathForPartAndCategory(AlliterationPart part, AlliterationCategory category) { return(part == AlliterationPart.Adjective ? ".\\WordLists\\WordNet\\adjectives.txt" : ".\\WordLists\\WordNet\\nouns.txt"); }