2019-06-20 15:22:00 +00:00
|
|
|
from common import *
|
|
|
|
|
|
|
|
from trezor import io
|
|
|
|
|
|
|
|
|
|
|
|
class TestTrezorIoSdcard(unittest.TestCase):
|
|
|
|
|
|
|
|
def test_start(self):
|
2020-02-18 13:30:46 +00:00
|
|
|
self.assertTrue(io.sdcard.is_present())
|
2019-06-20 15:22:00 +00:00
|
|
|
|
|
|
|
def test_power(self):
|
|
|
|
x = bytearray(8 * 512)
|
2020-02-18 13:30:46 +00:00
|
|
|
self.assertEqual(io.sdcard.capacity(), 0)
|
2019-06-21 20:51:21 +00:00
|
|
|
with self.assertRaises(OSError):
|
2020-02-18 13:30:46 +00:00
|
|
|
io.sdcard.read(0, x)
|
|
|
|
io.sdcard.power_on()
|
|
|
|
self.assertTrue(io.sdcard.capacity() > 0)
|
|
|
|
io.sdcard.read(0, x)
|
|
|
|
io.sdcard.power_off()
|
|
|
|
self.assertEqual(io.sdcard.capacity(), 0)
|
2019-06-21 20:51:21 +00:00
|
|
|
with self.assertRaises(OSError):
|
2020-02-18 13:30:46 +00:00
|
|
|
io.sdcard.read(0, x)
|
2019-06-20 15:22:00 +00:00
|
|
|
|
|
|
|
def test_read(self):
|
|
|
|
x = bytearray(8 * 512)
|
2020-02-18 13:30:46 +00:00
|
|
|
io.sdcard.power_on()
|
|
|
|
io.sdcard.read(0, x)
|
|
|
|
io.sdcard.power_off()
|
2019-06-21 20:51:21 +00:00
|
|
|
with self.assertRaises(OSError):
|
2020-02-18 13:30:46 +00:00
|
|
|
io.sdcard.read(0, x)
|
2019-06-20 15:22:00 +00:00
|
|
|
|
|
|
|
def test_read_write(self):
|
|
|
|
r = bytearray(8 * 512)
|
|
|
|
w0 = bytearray(b'0' * (8 * 512))
|
|
|
|
w1 = bytearray(b'1' * (8 * 512))
|
2020-02-18 13:30:46 +00:00
|
|
|
io.sdcard.power_on()
|
|
|
|
io.sdcard.write(0, w0)
|
|
|
|
io.sdcard.read(0, r)
|
2019-06-20 15:22:00 +00:00
|
|
|
self.assertEqual(r, w0)
|
2020-02-18 13:30:46 +00:00
|
|
|
io.sdcard.write(0, w1)
|
|
|
|
io.sdcard.read(0, r)
|
2019-06-20 15:22:00 +00:00
|
|
|
self.assertEqual(r, w1)
|
2020-02-18 13:30:46 +00:00
|
|
|
io.sdcard.power_off()
|
2019-06-20 15:22:00 +00:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
unittest.main()
|