summaryrefslogtreecommitdiff
path: root/tst/com/p4square/grow/model/ImageQuestionTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'tst/com/p4square/grow/model/ImageQuestionTest.java')
-rw-r--r--tst/com/p4square/grow/model/ImageQuestionTest.java74
1 files changed, 74 insertions, 0 deletions
diff --git a/tst/com/p4square/grow/model/ImageQuestionTest.java b/tst/com/p4square/grow/model/ImageQuestionTest.java
new file mode 100644
index 0000000..28ccdb2
--- /dev/null
+++ b/tst/com/p4square/grow/model/ImageQuestionTest.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright 2013 Jesse Morgan
+ */
+
+package com.p4square.grow.model;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Test for ImageQuestion.
+ *
+ * @author Jesse Morgan <jesse@jesterpm.net>
+ */
+public class ImageQuestionTest {
+ private static final double DELTA = 1e-4;
+
+ public static void main(String... args) {
+ org.junit.runner.JUnitCore.main(ImageQuestionTest.class.getName());
+ }
+
+ private Question mQuestion;
+
+ @Before
+ public void setUp() {
+ mQuestion = new ImageQuestion();
+
+ Answer a1 = new Answer();
+ a1.setScore(2);
+
+ Answer a2 = new Answer();
+ a2.setScore(4);
+
+ mQuestion.getAnswers().put("a1", a1);
+ mQuestion.getAnswers().put("a2", a2);
+ }
+
+ /**
+ * The ScoringEngines are tested extensively independently, so simply
+ * verify that we get the expected results for our input.
+ */
+ @Test
+ public void testScoreAnswer() {
+ Score score = new Score();
+ RecordedAnswer answer = new RecordedAnswer();
+
+ answer.setAnswerId("a1");
+ assertTrue(mQuestion.scoreAnswer(score, answer));
+ assertEquals(2, score.sum, DELTA);
+ assertEquals(1, score.count);
+
+ answer.setAnswerId("a2");
+ assertTrue(mQuestion.scoreAnswer(score, answer));
+ assertEquals(6, score.sum, DELTA);
+ assertEquals(2, score.count);
+
+ try {
+ answer.setAnswerId("unknown");
+ assertTrue(mQuestion.scoreAnswer(score, answer));
+ fail("Should have thrown exception.");
+ } catch (IllegalArgumentException e) {
+ }
+ }
+
+ /**
+ * Verify the correct type string is returned.
+ */
+ @Test
+ public void testType() {
+ assertEquals("image", mQuestion.getType().toString());
+ }
+}