1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-22 15:38:11 +00:00

Protect call test passed!

This commit is contained in:
slush 2013-09-01 03:35:31 +02:00
parent 6fe26c26e4
commit 702460d153

View File

@ -1,7 +1,7 @@
import unittest
import common
from bitkeylib.client import CallException, PinException, OtpException
from bitkeylib.client import CallException, PinException
from bitkeylib import proto
class TestProtectCall(common.BitkeyTest):
@ -12,52 +12,24 @@ class TestProtectCall(common.BitkeyTest):
self.assertEqual(len(entropy), entropy_len)
def test_no_protection(self):
self.bitkey.load_device(algo=proto.ELECTRUM,
self.bitkey.load_device(
seed='beyond neighbor scratch swirl embarrass doll cause also stick softly physical nice',
otp=False, pin='', spv=False)
pin='')
self.assertEqual(self.bitkey.features.has_otp, False)
self.assertEqual(self.bitkey.features.pin, False)
self.assertEqual(self.bitkey.debuglink.read_pin()[0], '')
self._some_protected_call()
def test_otp_only(self):
self.bitkey.load_device(algo=proto.ELECTRUM,
def test_pin(self):
self.bitkey.load_device(
seed='beyond neighbor scratch swirl embarrass doll cause also stick softly physical nice',
otp=True, pin='', spv=False)
pin='2345')
self.assertEqual(self.bitkey.features.has_otp, True)
self.assertEqual(self.bitkey.features.pin, False)
self.assertEqual(self.bitkey.debuglink.read_pin()[0], '2345')
self._some_protected_call()
def test_pin_only(self):
self.bitkey.load_device(algo=proto.ELECTRUM,
seed='beyond neighbor scratch swirl embarrass doll cause also stick softly physical nice',
otp=False, pin='2345', spv=False)
self.assertEqual(self.bitkey.features.has_otp, False)
self.assertEqual(self.bitkey.features.pin, True)
self._some_protected_call()
def test_both(self):
self.bitkey.load_device(algo=proto.ELECTRUM,
seed='beyond neighbor scratch swirl embarrass doll cause also stick softly physical nice',
otp=True, pin='3456', spv=False)
self.assertEqual(self.bitkey.features.has_otp, True)
self.assertEqual(self.bitkey.features.pin, True)
self._some_protected_call()
def test_incorrect_pin(self):
self.bitkey.setup_debuglink(button=True, pin_correct=False, otp_correct=True)
self.bitkey.setup_debuglink(button=True, pin_correct=False)
self.assertRaises(PinException, self._some_protected_call)
def test_incorrect_otp(self):
self.bitkey.setup_debuglink(button=True, pin_correct=True, otp_correct=False)
self.assertRaises(OtpException, self._some_protected_call)
def test_incorrect_both(self):
self.bitkey.setup_debuglink(button=True, pin_correct=False, otp_correct=False)
self.assertRaises(CallException, self._some_protected_call)
if __name__ == '__main__':
unittest.main()