throw new Error instead of throw string
fix tests: now throw error when cannot calculate key
Разнёс тесты как просил @doochik