public WordExpression(RomanPseudonymMapper pseudonymMap, WordMapper wordMap, IDecimalConverter converter, ExpressionValidationHelper helper) { _pseudonymMap = pseudonymMap; _wordMap = wordMap; _converter = converter; _helper = helper; }
public void PseudonymExpressionTest() { RomanPseudonymMapper pseudonymMap = new RomanPseudonymMapper(); PseudonymExpression expression = new PseudonymExpression(pseudonymMap); Assert.True(expression.Match("glob is I")); Assert.False(expression.Match("glob is N")); expression.Execute("glob is I"); Assert.True(pseudonymMap.Exists("glob")); Assert.Equal("I", pseudonymMap.GetValueForPseudonym("glob")); }
private List <IExpression> GetExpressions(RomanPseudonymMapper pseudonymMap, IDecimalConverter converter, WordMapper wordMap, ExpressionValidationHelper helper) { List <IExpression> expressions = new List <IExpression> { new PseudonymExpression(pseudonymMap), new UnitExpression(pseudonymMap, wordMap, converter, helper), new PseudonymQuestionExpression(pseudonymMap, converter, helper), new UnitQuestionExpression(pseudonymMap, wordMap, converter, helper), new WordExpression(pseudonymMap, wordMap, converter, helper) }; return(expressions); }
public void UnitExpressionTest() { RomanPseudonymMapper pseudonymMap = new RomanPseudonymMapper(); RomanConverter converter = new RomanConverter(); WordMapper wordMap = new WordMapper(); pseudonymMap.AddPseudonym("glob", "I"); pseudonymMap.AddPseudonym("pish", "X"); ExpressionValidationHelper helper = new ExpressionValidationHelper(pseudonymMap, wordMap); UnitExpression expression = new UnitExpression(pseudonymMap, wordMap, converter, helper); expression.Execute("pish glob Iron is 110 Credits"); Assert.True(wordMap.Exists("Iron")); Assert.Equal <double>(10, wordMap.GetPriceByWord("Iron")); expression.Execute("glob pish Iron is 6300 Credits"); Assert.Equal <double>(700, wordMap.GetPriceByWord("Iron")); }
static void Main() { Console.WriteLine("File Details"); Console.WriteLine("_______________"); string path = "../../file.txt"; string readText = File.ReadAllText(path); string[] lines = readText.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries); Console.WriteLine(readText); Console.WriteLine(); RomanPseudonymMapper pseudonymMap = new RomanPseudonymMapper(); IDecimalConverter converter = new RomanConverter(); WordMapper wordMap = new WordMapper(); ExpressionParser parser = new ExpressionParser(pseudonymMap, converter, wordMap); foreach (string line in lines) { parser.Parse(line.ToUpper()); } Console.ReadLine(); }
public ExpressionParser(RomanPseudonymMapper pseudonymMap, IDecimalConverter converter, WordMapper wordMap) { helper = new ExpressionValidationHelper(pseudonymMap, wordMap); expressions = GetExpressions(pseudonymMap, converter, wordMap, helper); }
public ExpressionValidationHelper(RomanPseudonymMapper pseudonymMap, WordMapper wordMap) { _pseudonymMap = pseudonymMap; _wordMap = wordMap; }
public PseudonymExpression(RomanPseudonymMapper pseudonymMap) { _pseudonymMap = pseudonymMap; }
public PseudonymQuestionExpression(RomanPseudonymMapper pseudonymMap, IDecimalConverter converter, ExpressionValidationHelper helper) { _pseudonymMap = pseudonymMap; _converter = converter; _helper = helper; }