Last active
March 17, 2018 02:03
-
-
Save brunofrank/9710149d1157ed457cc3f10d8cad30b7 to your computer and use it in GitHub Desktop.
Requisitos TDD
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Requisitos. | |
[1] | |
* Criar uma simples calculadora de strings. | |
* Deve ter o método int Add(string numbers). | |
* Este método pode receber 0, 1 ou 2 numeros separados por (,). | |
[2] | |
* para string vazias retornar 0. | |
[3] | |
* Deve retornar a soma deles por exemplo "" ou "1" ou "1,2" | |
[4] | |
* Permitir que o método Add somar uma quantidade desconhecida de números. exemplo "3+4+5+33+11+11+22+5+1" | |
[5] | |
* Permitir que o método Add manipular \n (new line) entre os numeros no lugar de virgula. | |
Ex: O seguinte deve funcionar: "1\n2,3" (6) | |
[6] | |
* Suporte a diferentes delimitadores. | |
* Para alterar o delimitador, o inicio da string deve contar ele entre "//DELIMITADOR\n[NUMEROS...]" como por exemplo: "//;\n1;3" = 4 | |
* A primeira linha é opcional, todos os cenários devem ser suportados. | |
[7] | |
* Somar numeros negativos deve retornar uma exception "Numeros negativos não permitidos" com o numero negativo informado. | |
* Se tiver mais de um negativo informar todos na exception. | |
[PARE AQUI SE VC É INICIANTE] | |
[8] | |
* Números maiores que 1000 deve ser ignorado, se somar 2 + 1001 = 2 | |
[9] | |
* Delimitadores podem ter qualquer tamanho, desde que no formato “//[delimiter]\n” por exemplo: “//[—-]\n1—-2—-3” = 6 | |
[10] | |
* Permitir multiplos delimitadores tipo: “//[delim1][delim2]\n” por exemplo “//[-][%]\n1-2%3” = 6. | |
Este é um código bem simples, olhando os requisitos pode parecer difícil. | |
Esqueça tudo que leu acima, e vamos seguindo os requisitos 1 a 1. | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment