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....
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
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.