Je cette méthode avec cette signature:java.lang.AssertionError lors de la session TDD
public char[] checkDouble(String s) {
int[] letters = new int[26];
for (int i = 0; i < s.length(); i++) {
letters[s.charAt(i) - 97]++;
}
char[] copyLoop = new char[26];
for (int i = 0; i < letters.length; i++) {
if (letters[i] > 1) {
char c = (char) (i + 97);
copyLoop[i] = c;
}
}
return copyLoop;
}
et mon cas de test JUnit:
public class DoubleCharTest {
private DoubleChar c;
@Before
public void before() {
c = new DoubleChar();
}
@Test
public void test1(){
char [] result = c.checkDouble("wallaby");
Assert.assertEquals("al", result);
}
Pourquoi mon test ne passe pas et je cette Erreur?
expected: 'al' but was:<[[email protected]>
test1 public void() { \t \t char [] résultat = c.checkDouble ("casa"); \t \t Assert.assertEquals ("a", String.valueOf (résultat)); \t \t \t} Je suis désolé mais cela ne fonctionne pas. Encore une fois: prévu: mais était: . Je suis confus! – Clash
@Clash pourriez-vous mettre à jour votre question pour inclure l'implémentation de 'checkDouble()'? – glytching
'public char [] checkDouble (Chaîne s) { \t \t int [] letters = new int [26]; Pour (int i = 0; i
1) { \t \t char c = (char) (i + 97); \t \t copyLoop [i] = c; \t \t} \t \t} \t \t copyLoop de retour; \t \t \t} ' – Clash