@@ -107,7 +107,7 @@ async function createLeaderboard (challengeId, memberId, review) {
107
107
memberId,
108
108
challengeId,
109
109
handle : member . handle ,
110
- aggregateScore : review . score , // For TCO scenario, we will only have 1 review - per member and per challenge
110
+ aggregateScore : review . score ? review . score : 0 , // For TCO scenario, we will only have 1 review - per member and per challenge
111
111
status : review . status ,
112
112
testsPassed,
113
113
totalTestCases,
@@ -133,7 +133,6 @@ createLeaderboard.schema = {
133
133
review : joi . object ( ) . keys ( {
134
134
id : joi . string ( ) . required ( ) ,
135
135
submissionId : joi . string ( ) . required ( ) ,
136
- score : joi . number ( ) . required ( ) . allow ( null )
137
136
} ) . unknown ( true ) . required ( )
138
137
}
139
138
@@ -215,12 +214,14 @@ async function updateLeaderboard (challengeId, memberId, review) {
215
214
216
215
if ( review . resource === 'reviewSummation' ) {
217
216
console . log ( 'Updating leaderboard using review summation' )
218
- if ( ! review . aggregateScore ) {
219
- throw Error ( 'Aggregate score is needed for the review summation' )
220
- }
217
+ let aggregateScore = review . aggregateScore ?review . aggregateScore :0
218
+
221
219
_ . assignIn ( existRecords [ 0 ] , {
220
+ aggregateScore,
221
+ testsPassed,
222
+ totalTestCases,
222
223
finalDetails : {
223
- aggregateScore : review . aggregateScore ,
224
+ aggregateScore,
224
225
testsPassed,
225
226
totalTestCases
226
227
}
@@ -249,7 +250,11 @@ async function updateLeaderboard (challengeId, memberId, review) {
249
250
}
250
251
251
252
_ . assignIn ( existRecords [ 0 ] , {
252
- aggregateScore : review . score ,
253
+ finalDetails : {
254
+ testsPassed,
255
+ totalTestCases
256
+ } ,
257
+ aggregateScore : review . score ?review . score :0 ,
253
258
reviewId : review . id ,
254
259
testsPassed,
255
260
totalTestCases,
0 commit comments