-
Notifications
You must be signed in to change notification settings - Fork 3
/
grading.yml
161 lines (136 loc) · 4.11 KB
/
grading.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
# This is a separate section containing a few templates that we will use below.
# The & feature is built into YAML, it is not a special feature of the website.
# The section does not need to be called `templates` necessarily.
templates:
1: &automatic
type: pass
subgrades:
done: boolean
automatic:
done: -(correctness_score.floor)
calculation: done
auto_publish: true
hide_calculated: true
4: &autopoints
type: float
subgrades:
points: integer
automatic:
points: correctness_score
calculation: (points / 6.0 * 9 + 1).round(1)
# auto_publish: true
hide_subgrades: true
2: &manual
type: float
subgrades:
points: integer
calculation: points
# hide_subgrades: true
3: &check
type: pass
subgrades:
done: boolean
calculation: done
hide_calculated: true
# GRADES - contains definitions of how grades are structured. The names of the
# grades match the names of submits that may be defined in `submit.yml`
# elsewhere, but you can also create grades without an accompanying submit.
#
# The following properties are supported:
#
# - `type` can be `integer`, `float` or `pass`, which influences presentation
# and input
#
# - `subgrades` defines any extra numbers to be added to a grade, with their
# types `integer`, `pass`, `boolean` or `float`
#
# - note: if any subgrades are defined, teaching assistants are only allowed to
# enter those, and can't override the grade itself
#
# - `calculation` is an expression that is evaluated in the context of the
# subgrades, which means you can use any subgrade by name in that expression, as
# well as any standard Ruby objects and syntax
#
# - `automatic` is an expression that is evaluated in the context of any
# automatic grading results (as defined in `submit.yml`) - allowing the use of
# the variable `correctness_score`. It can only be used to fill in subgrades,
# but you can then use the `calculation` to transfer the value of a subgrade
# into the grade.
#
# - `hide_calculated` hides the calculated grade, only showing the entered
# subgrades (to de-emphasize grades for students)
#
# - `hide_subgrades` hides the subgrades, for example if you want to do a simple
# calculation but only show the resulting grade to students
#
# You can leave this out if grading isn't used or if each submit simply requires
# entering a final grade, no subgrades and no calculations.
grades:
# module 1
weken: *automatic
water: *automatic
binair: *automatic
cafeine: *automatic
vakantie: *automatic
acid: *automatic
orakel: *automatic
byte: *automatic
rechthoeken: *automatic
priem_getal: *check
# module 2
cola: *automatic
greedy: *automatic
raadspel: *automatic
populatie: *automatic
piramide: *automatic
temperatuur: *automatic
kalender: *automatic
monopoly: *check
# module 3
string_module: *automatic
string_methods: *automatic
alfabet: *automatic
etenstijd: *automatic
calculator: *automatic
wachtwoord: *automatic
rna: *automatic
leesbaarheid: *automatic
camelcase: *automatic
# module 4
list_functions: *automatic
scrabble: *automatic
selection_sort: *automatic
special_sort: *automatic
sjoelen: *automatic
schuifpuzzel: *automatic
virus: *automatic
# module 5
indexer: *automatic
eca2csv: *automatic
klimaat: *automatic
# module 6
queue: *automatic
cards: *automatic
country: *automatic
lines: *automatic
war: *check
hangman: *automatic
hangman-less: *automatic
knapsack: *check
lisp: *automatic
lisp2: *automatic
figuren: *automatic
# module 7
# overige
prisoners: *check
birthdays: *check
kunstroof: *check
recursie: *check
comprehensions: *automatic
dict_oefening: *automatic
set_oefening: *automatic
collection_functions: *automatic
collection_functions2: *automatic
algorithms: *check
pygame: *check
project: *check