$parent_cat = $item->get_parent_category();
if ($item->gradetype == GRADE_TYPE_TEXT) {
$grademax = ' - ';
- } else if ($parent_cat->aggregation == GRADE_AGGREGATE_SUM) {
- $grademax = format_float($item->grademax, $item->get_decimals());
} else if ($item->gradetype == GRADE_TYPE_SCALE) {
$scale = $DB->get_record('scale', array('id' => $item->scaleid));
$scale_items = null;
} else {
$scale_items = explode(',', $scale->scale);
}
- $grademax = end($scale_items) . ' (' . count($scale_items) . ')';
+ if ($parent_cat->aggregation == GRADE_AGGREGATE_SUM) {
+ $grademax = end($scale_items) . ' (' .
+ format_float($item->grademax, $item->get_decimals()) . ')';
+ } else {
+ $grademax = end($scale_items) . ' (' . count($scale_items) . ')';
+ }
} else {
$grademax = format_float($item->grademax, $item->get_decimals());
}
// Make the expected scale text.
$scaleitems = null;
$scaleitems = explode(',', $scale->scale);
- $scalestring = end($scaleitems) . ' (' . count($scaleitems) . ')';
+ // Make sure that we expect grademax (displayed in parenthesis) be the same
+ // as number of items in the scale.
+ $scalestring = end($scaleitems) . ' (' .
+ format_float(count($scaleitems), 2) . ')';
$this->assertEquals(GRADE_TYPE_SCALE, $gradeitem->gradetype);
$this->assertEquals($scale->id, $gradeitem->scaleid);