/// <summary> /// Метод-решатель, определяет, находится ли на i-ой позиции в массиве распарсеной строки /// вещественное число (тогда в массиве result записываем true), команда из соответствующего класса /// (тогда false) или какой-то мусор (возвращается InvalidInput) /// </summary> /// <param name="result"></param> /// <param name="parsedStr"></param> /// <returns></returns> public static ResultStatus DoubleOrCommandDecider(bool[] result, string[] parsedStr) { double parsedDouble; for (int i = 0; i < parsedStr.Length; i++) { if (double.TryParse(parsedStr[i], System.Globalization.NumberStyles.Any, CultureInfo.InvariantCulture, out parsedDouble)) { result[i] = true; } else { if (!CalculatorOperators.Contains(parsedStr[i])) { return(ResultStatus.InvalidInput); } } } return(ResultStatus.OK); }
public void CalculatorOperatorsContains_Test(string symbols, bool contains) { Assert.AreEqual(contains, CalculatorOperators.Contains(symbols)); }