Skip to content
Snippets Groups Projects
Commit fa12b10c authored by uhensler's avatar uhensler
Browse files

OO-4426: Calculate variance if exactly two users have participated in a survey

parent 2b531d7d
No related branches found
No related tags found
No related merge requests found
......@@ -203,7 +203,7 @@ class RubricStatisticCalculator {
size++;
}
}
return size > 2? varianceDividend/(size - 1): null;
return size > 1? varianceDividend/(size - 1): null;
}
Double getStdDev(Double variance) {
......
......@@ -201,6 +201,35 @@ public class RubricStatisticCalculatorTest {
assertThat(variance).isEqualTo(1.5);
}
@Test
public void shouldCalculateSliderVarianceOfTwoResponses() {
ScaleType scaleType = ScaleType.oneToMax;
StepCountsBuilder stepCountsBuilder = StepCountsBuilder.builder(4);
stepCountsBuilder.withCount(1, Long.valueOf(1));
stepCountsBuilder.withCount(2, Long.valueOf(1));
stepCountsBuilder.withCount(3, Long.valueOf(0));
stepCountsBuilder.withCount(4, Long.valueOf(0));
SumMean sumMean = sut.getSumMean(stepCountsBuilder.build(), scaleType);
Double variance = sut.getVariance(stepCountsBuilder.build(), scaleType, sumMean.getMean());
assertThat(variance).isEqualTo(0.5);
}
@Test
public void shouldCalculateSliderVarianceOfOneResponse() {
ScaleType scaleType = ScaleType.oneToMax;
StepCountsBuilder stepCountsBuilder = StepCountsBuilder.builder(4);
stepCountsBuilder.withCount(1, Long.valueOf(1));
stepCountsBuilder.withCount(2, Long.valueOf(0));
stepCountsBuilder.withCount(3, Long.valueOf(0));
stepCountsBuilder.withCount(4, Long.valueOf(0));
SumMean sumMean = sut.getSumMean(stepCountsBuilder.build(), scaleType);
Double variance = sut.getVariance(stepCountsBuilder.build(), scaleType, sumMean.getMean());
assertThat(variance).isNull();
}
@Test
public void shouldCalculateSliderVarianceScaled() {
ScaleType scaleType = ScaleType.zeroBallanced;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment