初めてのポスター、長い時間のlurkerはここにあります。重複するエンコーダのコードワーカーjava Junitの例外
私は "Duplicate Encoder"という名前のコードワードを使っています。 私が書いたコードは正しく機能していますが、何らかの理由でjunit(4.12)はそれを主張していません。ウェブサイトと私のIDE(Eclipse)の両方で。私はそれがなぜなのか分かりません。誰かがこの問題についていくつかの光を照らすことができますか?ありがとう。
テストされるクラス:
package com.danman;
import java.util.*;
public class Person {
static String encode(String word){
word = word.toLowerCase();
List<String> bank = new ArrayList<>();
StringBuilder wordTwo = new StringBuilder("");
//1: create a list of all unique elements in the string
for (int n = 0; n < word.length(); n++) {
String temp = word.substring(n, n+1);
if (temp.equals(" ")){continue;}
bank.add(temp);
}
for (int r = 0; r <word.length(); r++){
List<String> bankTwo = bank;
Iterator<String> it = bankTwo.iterator();
String tempTwo = word.substring(r, r+1);
int count = 0;
//2: iterate through the list of elements and append the appropriate token to the StringBuilder
while (it.hasNext()){
if (it.next().equals(tempTwo)){
++count;
}
}
if (count <= 1){
wordTwo.append("(");
} else {
wordTwo.append(")");
}`enter code here`
}
word = wordTwo.toString();
return word;
}
public static void main(String[] args) {
Person rinus = new Person();
System.out.println(rinus.encode("Prespecialized"));
}
JUnitのファイル:限り、私はあなたのコード、最初のアサートがOKであることを理解として
package com.danman;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class PersonTest {
@Test
public void test() {
assertEquals(")()())()(()()(", Person.encode("Prespecialized"));
assertEquals("))))())))", Person.encode(" ()( "));
}
すべきですか? – logger