1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-05 05:58:23 +00:00
trezor-firmware/core/tests/test_trezor.io.sdcard.py

48 lines
1.3 KiB
Python
Raw Normal View History

from common import * # isort:skip
from trezor import io, utils
class TestTrezorIoSdcard(unittest.TestCase):
def test_start(self):
2020-02-18 13:30:46 +00:00
self.assertTrue(io.sdcard.is_present())
def test_power(self):
x = bytearray(8 * 512)
2020-02-18 13:30:46 +00:00
self.assertEqual(io.sdcard.capacity(), 0)
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)
with self.assertRaises(OSError):
2020-02-18 13:30:46 +00:00
io.sdcard.read(0, x)
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()
with self.assertRaises(OSError):
2020-02-18 13:30:46 +00:00
io.sdcard.read(0, x)
def test_read_write(self):
r = bytearray(8 * 512)
2023-06-28 10:46:29 +00:00
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)
self.assertEqual(r, w0)
2020-02-18 13:30:46 +00:00
io.sdcard.write(0, w1)
io.sdcard.read(0, r)
self.assertEqual(r, w1)
2020-02-18 13:30:46 +00:00
io.sdcard.power_off()
2023-06-28 10:46:29 +00:00
if __name__ == "__main__":
if utils.USE_SD_CARD:
unittest.main()