006順子の判断修正について


ユニットテストを受けていないクラスに対して、私は本当に安心できません.そこでJunkoにユニットテストを書きました.コードは以下の通りです.
/**
 * <p>Title: JunkoTest.java</p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2007</p>
 * @author Tunie 
 * @date 2014 9 16 
 * @version 1.0
 */
public class JunkoTest extends TestCase {

	public void testJudgeResult() {

		List<Card> list = new ArrayList<Card>();
		list.add(new Card(CardType.CARD_A));
		list.add(new Card(CardType.CARD_K));
		list.add(new Card(CardType.CARD_Q));
		list.add(new Card(CardType.CARD_J));
		list.add(new Card(CardType.CARD_10));
		list.add(new Card(CardType.CARD_9));
		
		CardGroup cardGroup = new CardGroup();
		cardGroup.addAll(list);
		
		HandCard junko = new Junko();
		boolean result = junko.judge(cardGroup);
		assertEquals(true, result);
	}

}

その結果、私が問題を検出しました.問題は2つあります.1つはカードの数の判断です.1つはその循環位置の処理で、最新のJunkoコードをリストします.
/**
 * <p>Title: Junko.java</p>
 * <p>Description:   </p>
 * <p>Copyright: Copyright (c) 2007</p>
 * @author Tunie 
 * @date 2014 9 16 
 * @version 1.0
 */
public class Junko extends HandCard {
	
	public Junko() {
		setType(HandCardType.JUNKO);
	}

	@Override
	protected boolean determineConditions(CardGroup cardGroup) {
		return cardGroup.size() >= 5;
	}

	@Override
	protected boolean judgeResult(CardGroup cardGroup) {
		cardGroup.doSort(CardGroupSortType.DECREASE);
		boolean result = true;
		int score = cardGroup.getCard(0).getType();
		for(int i = 1; i <cardGroup.size() ; i ++ ) {
			score --;
			if(score != cardGroup.getCard(i).getType()){
				result = false;
				break;
			}
		}
		return result;
	}
}