grading-procs.tcl

Test Item grading procs - support for different kind of grading types and schemes.

This file defines the following Objects and Classes: ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::round-percentage[i], ::xowf::test_item::grading::round-points[i], ::xowf::test_item::grading::round-none[i], ::xowf::test_item::grading::none[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPoints[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::GradingRoundPercentage[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::Grading[i], ::xowf::test_item::grading::GradingNone[i], ::xowf::test_item::grading::GradingRoundNone[i], ::xowf::test_item::grading::Grading[i]

Location:
packages/xowf/tcl/grading-procs.tcl
Author:
Gustaf Neumann

Procedures in this file

Detailed information

Class ::xowf::test_item::grading::Grading (public)

 ::nx::Class ::xowf::test_item::grading::Grading[i]

Superclass representing a generic grading

Testcases:
No testcase defined.

Class ::xowf::test_item::grading::GradingNone (public)

 ::nx::Class ::xowf::test_item::grading::GradingNone[i]

Grading scheme, which omits grading at all.

Testcases:
No testcase defined.

Class ::xowf::test_item::grading::GradingRoundNone (public)

 ::nx::Class ::xowf::test_item::grading::GradingRoundNone[i]

Implements a grading with no special rounding.

Testcases:
No testcase defined.

Class ::xowf::test_item::grading::GradingRoundPercentage (public)

 ::nx::Class ::xowf::test_item::grading::GradingRoundPercentage[i]

Implements a grading expressed as a rounded percentage

Testcases:
No testcase defined.

Class ::xowf::test_item::grading::GradingRoundPoints (public)

 ::nx::Class ::xowf::test_item::grading::GradingRoundPoints[i]

Implements a grading expressed as a rounded number of points

Testcases:
No testcase defined.

xowf::test_item::grading::Grading method calc_grade (protected)

 <instance of xowf::test_item::grading::Grading[i]> calc_grade \
    [ -percentage percentage ] [ -points points ] \
    [ -achievable_points achievable_points ]

Return a numeric grade for an exam submission based on percentage and the property "percentage_mapping". On invalid data, return 0. When "-percentage" is provided, use this for calculation Otherwise calculate percentage based on "-points" (which might be custom rounded) and "-achievable_points".

Switches:
-percentage (optional)
-points (optional)
-achievable_points (optional)

Testcases:
No testcase defined.

xowf::test_item::grading::Grading method init (protected)

 <instance of xowf::test_item::grading::Grading[i]> init

Provide a default, self-descriptive title

Testcases:
No testcase defined.

xowf::test_item::grading::GradingRoundNone method grade (public)

 <instance of xowf::test_item::grading::GradingRoundNone[i]> grade \
    -achieved_points achieved_points 

Return a numeric grade for an exam submission based with no special rounding (2 digits). On invalid data, return 0.

Switches:
-achieved_points (required)

Testcases:
No testcase defined.

xowf::test_item::grading::GradingRoundPercentage method grade (public)

 <instance of xowf::test_item::grading::GradingRoundPercentage[i]> grade \
    -achieved_points achieved_points 

Return a numeric grade for an exam submission based on rounded percentage. On invalid data, return 0.

Switches:
-achieved_points (required)

Testcases:
No testcase defined.

xowf::test_item::grading::GradingRoundPoints method grade (public)

 <instance of xowf::test_item::grading::GradingRoundPoints[i]> grade \
    -achieved_points achieved_points 

Return a numeric grade for an exam submission based on rounded points. On invalid data, return 0.

Switches:
-achieved_points (required)

Testcases:
No testcase defined.

xowf::test_item::grading::flush_grading_schemes (private)

 xowf::test_item::grading::flush_grading_schemes -package_id package_id \
    -parent_id parent_id

Helper to hide the implementation details of the flushed cache. For now, we flush all grading schemes, but probably it would be sufficient to flush just a subset. The tricky part is that the grading objects are loaded potentially from the foll search hierarchy, starting with the local folder, reaching to the global objects. So, if anything is changed there, we would not notice immediately. Therefore, the passed-in package_id and parent_id are not used currently. This function is called, whenever a grading scheme is edited.

Switches:
-package_id (required)
-parent_id (required)

Partial Call Graph (max 5 caller/called nodes):
%3

Testcases:
No testcase defined.

xowf::test_item::grading::grading_scheme_wf_item_id (private)

 xowf::test_item::grading::grading_scheme_wf_item_id \
    -package_id package_id -parent_id parent_id

Return and cache the item_id of the edit-grading-scheme.wf. Maybe, we should generalize this function for other cases as well, therefore, we make this for the time being private.

Switches:
-package_id (required)
-parent_id (required)

Partial Call Graph (max 5 caller/called nodes):
%3 xowf::test_item::grading::load_grading_schemes xowf::test_item::grading::load_grading_schemes (public) xowf::test_item::grading::grading_scheme_wf_item_id xowf::test_item::grading::grading_scheme_wf_item_id xowf::test_item::grading::load_grading_schemes->xowf::test_item::grading::grading_scheme_wf_item_id

Testcases:
No testcase defined.

xowf::test_item::grading::load_grading_schemes (public)

 xowf::test_item::grading::load_grading_schemes -package_id package_id \
    -parent_id parent_id

Load the actual grading scheme objects defined for the package_id and parent_id. It might be the case that this function is called multiple times by a single request (when e.g. multiple exams are on a single page). So we are caching the result to avoid repeated computations of the same result.

Switches:
-package_id (required)
-parent_id (required)

Partial Call Graph (max 5 caller/called nodes):
%3 Class ::xowf::test_item::Answer_manager Class ::xowf::test_item::Answer_manager (public) xowf::test_item::grading::load_grading_schemes xowf::test_item::grading::load_grading_schemes Class ::xowf::test_item::Answer_manager->xowf::test_item::grading::load_grading_schemes xowf::test_item::Answer_manager instproc grading_scheme xowf::test_item::Answer_manager instproc grading_scheme (public) xowf::test_item::Answer_manager instproc grading_scheme->xowf::test_item::grading::load_grading_schemes xowf::test_item::grading::grading_scheme_wf_item_id xowf::test_item::grading::grading_scheme_wf_item_id (private) xowf::test_item::grading::load_grading_schemes->xowf::test_item::grading::grading_scheme_wf_item_id

Testcases:
No testcase defined.
[ show source ]