https://osherove.com/tdd-kata-1
Cree una calculadora de cadenas simple con una firma de método: int Add(string numbers)
-
El método puede tomar hasta dos números, separados por comas, y devolverá su suma. por ejemplo
“”o“1”o“1,2”como entradas. (para una cadena vacía, devolverá 0) -
Permitir que el método Add maneje una cantidad desconocida de números.
-
Permita que el método Add maneje nuevas líneas entre números (en lugar de comas):
- La siguiente entrada está bien:
"1\n2,3"(será igual a 6)
- La siguiente entrada está bien:
-
Soporta diferentes delimitadores:
-
Para cambiar un delimitador, el comienzo de la cadena contendrá una línea separada que se ve así:
“//[delimiter]\n[numbers…]”por ejemplo“//;\n1;2”debe devolver tres donde el delimitador predeterminado es ";" -
La primera línea es opcional. todos los escenarios existentes aún deben ser compatibles
-
-
Llamar a Add con un número negativo arrojará una excepción "negativos no permitidos" y el negativo que se pasó.
- Si hay varios negativos, muéstrelos todos en el mensaje de excepción.
-
Los números mayores que 1000 deben ignorarse, por lo que sumar
2 + 1001 = 2. -
Los delimitadores pueden tener cualquier longitud con el siguiente formato:
"//[delimitador]\n"por ejemplo:"//[***]\n1***2***3"debería devolver 6. -
Permita múltiples delimitadores como este:
“//[delim1][delim2]\n”por ejemplo“//[*][%]\n1*2%3”debería devolver 6. -
Asegúrese de que también puede manejar varios delimitadores con una longitud superior a un carácter