public void CharacterVariationCountTest() { var modifier = new CharacterSymbolModifier("CharacterMap.json"); var results = modifier.CharacterVariationCount('a'); Assert.IsNotNull(results); Assert.AreEqual(2, results); }
public void GenerateCharacterVariationsTestNoVariance() { var modifier = new CharacterSymbolModifier("CharacterMap.json"); var results = modifier.GenerateCharacterVariations('k'); Assert.IsNotNull(results); Assert.AreEqual(0, results.Count); }
public void GenerateCharacterVariationsTestMultipleVariance() { var modifier = new CharacterSymbolModifier("CharacterMap.json"); var results = modifier.GenerateCharacterVariations('a'); Assert.IsNotNull(results); Assert.AreEqual(2, results.Count); Assert.IsTrue(results.Contains('4')); Assert.IsTrue(results.Contains('@')); }
public void GenerateCharacterVariationsTestSingleVariance() { var modifier = new CharacterSymbolModifier("CharacterMap.json"); var results = modifier.GenerateCharacterVariations('e'); Assert.IsNotNull(results); Assert.AreEqual(1, results.Count); Assert.AreEqual('3', results.FirstOrDefault()); results = modifier.GenerateCharacterVariations('E'); Assert.IsNotNull(results); Assert.AreEqual(0, results.Count); }
private void AddWordElements(WordBank wordBank) { Console.WriteLine("Adding base words..."); var symbolMapProvided = !string.IsNullOrWhiteSpace(_symbolMap); ICharacterModifier symbolModifier = null; if (symbolMapProvided) { symbolModifier = new CharacterSymbolModifier(_symbolMap); } var caseModifier = new CharacterCaseModifier(); foreach (var inputElement in _inputElements) { WordElement wordElement = new WordElement(inputElement.Key); Console.Write($"Word: '{inputElement.Key}'"); var characterModifiers = new List <ICharacterModifier>(); if (symbolMapProvided && inputElement.Value.SymbolVariation) { Console.Write(" + symbol substitution"); wordElement.AddCharacterModifier(symbolModifier); } if (inputElement.Value.CaseVariation) { Console.Write(" + case variation"); wordElement.AddCharacterModifier(caseModifier); } Console.Write(" ... "); wordElement.GenerateCharacterVariations(); Console.WriteLine($"{wordElement.Count} variants"); wordBank.AddWord(wordElement); } Console.WriteLine(); }