package hudson.plugins.cigame.model;
import static org.mockito.Mockito.*;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;
import java.util.Arrays;
import hudson.model.AbstractBuild;
import org.junit.Test;
public class ScoreCardTest {
@Test(expected=IllegalStateException.class)
public void testIllegalStateThrownInGetScores() {
ScoreCard sc = new ScoreCard();
sc.getScores();
}
@Test
public void assertThatEmptyRuleResultIsNotUsed() {
Rule rule = mock(Rule.class);
when(rule.evaluate(isA(AbstractBuild.class))).thenReturn(RuleResult.EMPTY_RESULT);
ScoreCard card = new ScoreCard();
card.record(mock(AbstractBuild.class), new RuleSet("test", Arrays.asList(new Rule[]{rule})));
assertThat(card.getScores().size(), is(0));
}
@Test
public void assertEmptyRuleBookDoesNotThrowIllegalException() {
ScoreCard scoreCard = new ScoreCard();
scoreCard.record(mock(AbstractBuild.class), new RuleBook());
assertThat(scoreCard.getTotalPoints(), is(0d));
}
}