eu fiz os testes sugeridos para a classe Palindromo já acertada porém eu não a alterei e o resultado veio como se ela não tivesse os erros....
eu fiz os testes sugeridos para a classe Palindromo já acertada porém eu não a alterei e o resultado veio como se ela não tivesse os erros....
Fala ai Armando, tudo bem ?
Mostra seu código ai para gente e os seus testes também
Posta o código pra nos!
ok, mas apenas copiei os códigos do exemplo! e é justamente por isso que eu acho que deveria dar erro, já que eu não consertei o codigo da classe do Palindromo...
package br.com.caelum.leilao.teste;
public class Palindromo {
public boolean ehPalindromo(String frase) {
String fraseFiltrada = frase.toUpperCase().replace(" ", "").replace("-", "");
for(int i = 0; i < fraseFiltrada.length(); i++) {
if(fraseFiltrada.charAt(i) != fraseFiltrada.charAt(fraseFiltrada.length() -(i+1))) {
return false;
}
}
return true;
}
}
insira seu código aqui
package br.com.caelum.leilao.teste;
import org.junit.Assert;
import org.junit.Test;
public class TesteDoPalindromo {
@Test
public void deveIdentificarPalindromoEFiltrarCaracteresInvalidos() {
Palindromo p = new Palindromo();
boolean resultado = p.ehPalindromo(
"Socorram-me subi no onibus em Marrocos");
Assert.assertTrue(resultado);
}
@Test
public void deveIdentificarPalindromo() {
Palindromo p = new Palindromo();
boolean resultado = p.ehPalindromo(
"Anotaram a data da maratona");
Assert.assertTrue(resultado);
}
@Test
public void deveIdentificarSeNaoEhPalindromo() {
Palindromo p = new Palindromo();
boolean resultado = p.ehPalindromo(
"E preciso amar as pessoas como se nao houvesse amanha");
Assert.assertFalse(resultado);
}
}
Armando,
Os códigos estão corretos, não entendi bem o seu problema :(
O código esta certinho! Apresenta alguma mensagem quando você compila?
Pelo que entendi, e percebi fazendo o exercício, o método edPalindromo não contém bug, não precisando de correções, ao contrário do que o exercício pede.
Os testes que executei são:
package br.com.alura.cap1.desafio;
import org.junit.Assert;
import org.junit.Test;
public class PalindromoTest {
@Test
public void testaEhPalindromo(){
Palindromo palindromo = new Palindromo();
Assert.assertTrue(palindromo.ehPalindromo("arara"));
Assert.assertTrue(palindromo.ehPalindromo("Socorram-me subi no onibus em Marrocos"));
Assert.assertTrue(palindromo.ehPalindromo("Anotaram a data da maratona"));
}
@Test
public void testaNaoEhPalindromo(){
Palindromo palindromo = new Palindromo();
Assert.assertFalse(palindromo.ehPalindromo("teste"));
Assert.assertFalse(palindromo.ehPalindromo("capítulo"));
}
}
E abaixo segue o código original copiado do enunciado do exercício:
public class Palindromo {
public boolean ehPalindromo(String frase) {
String fraseFiltrada = frase
.toUpperCase().replace(" ", "").replace("-", "");
for(int i = 0; i < fraseFiltrada.length(); i++) {
if(fraseFiltrada.charAt(i) !=
fraseFiltrada.charAt(fraseFiltrada.length() -(i+1))) {
return false;
}
}
return true;
}
}
Exatamente isso, a solução foi só para você ver funcionar e praticar um pouco mais a questão de testes
Ahhhhh, isso foi pra você entender a lógica do programa e realizar os testes com a pratica.
Obrigado Cristiano Lopes Molin (também não tinha achado erro nenhum, mas gostaria de uma resposta mais honesta por parte dos moderadores/instrutores), exercício deveria ser revisado e não ficarem tentando dar este tipo de resposta: "a solução foi só para você ver funcionar e praticar um pouco mais a questão de testes" já que não foi isso o que pedia o enunciado do exercício.