Skip to content

Instantly share code, notes, and snippets.

@brunofrank
Last active March 17, 2018 02:03
Show Gist options
  • Save brunofrank/9710149d1157ed457cc3f10d8cad30b7 to your computer and use it in GitHub Desktop.
Save brunofrank/9710149d1157ed457cc3f10d8cad30b7 to your computer and use it in GitHub Desktop.
Requisitos TDD
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