14 changed files with 79 additions and 3 deletions
@ -0,0 +1,32 @@ |
|||||
|
import { calculateSquareScore } from "../src/libs/CalculateScore"; |
||||
|
import {shapes} from '../src/libs/ShapeEnum'; |
||||
|
import {generateKey, genSquareChallenge, generateAdditionChallenge} from '../src/libs/Random'; |
||||
|
|
||||
|
test('calculates square score', () => { |
||||
|
let score = calculateSquareScore(10, 10); |
||||
|
expect(score).toEqual(60000); |
||||
|
}); |
||||
|
|
||||
|
test('calculates square score with negative time score', () => { |
||||
|
let score = calculateSquareScore(10, 65); |
||||
|
expect(score).toEqual(10000); |
||||
|
}); |
||||
|
|
||||
|
test ('shapes enum exists', () => { |
||||
|
expect(shapes).toEqual(expect.anything()); |
||||
|
}); |
||||
|
|
||||
|
test ('generates 64 char key', () => { |
||||
|
let newKey = generateKey(); |
||||
|
expect(newKey.length).toEqual(64); |
||||
|
}); |
||||
|
|
||||
|
test ('generates square challenge', () => { |
||||
|
let newChallenge = genSquareChallenge(); |
||||
|
expect(newChallenge.length).toEqual(20); |
||||
|
}); |
||||
|
|
||||
|
test ('generates addition challenege', () => { |
||||
|
let newChallenge = generateAdditionChallenge(); |
||||
|
expect(newChallenge.length).toEqual(20); |
||||
|
}) |
@ -1,5 +1,10 @@ |
|||||
export function calculateSquareScore (answers, finalTime) { |
export function calculateSquareScore (answers, finalTime) { |
||||
let timeScore = Math.round((60 - finalTime) * 1000); |
let timeScore = Math.round((60 - finalTime) * 1000); |
||||
|
|
||||
|
if (timeScore < 0) { |
||||
|
timeScore = 0; |
||||
|
} |
||||
|
|
||||
let answerScore = answers * 1000; |
let answerScore = answers * 1000; |
||||
let finalScore = timeScore + answerScore; |
let finalScore = timeScore + answerScore; |
||||
return finalScore; |
return finalScore; |
||||
|
Loading…
Reference in new issue