mirror of
https://github.com/fergalmoran/picard.git
synced 2026-02-05 15:23:58 +00:00
cdrom: Always test generic implementation
This commit is contained in:
@@ -56,6 +56,15 @@ if discid is not None:
|
||||
LINUX_CDROM_INFO = '/proc/sys/dev/cdrom/info'
|
||||
|
||||
|
||||
def _generic_iter_drives():
|
||||
config = get_config()
|
||||
yield from (
|
||||
device.strip() for device
|
||||
in config.setting["cd_lookup_device"].split(",")
|
||||
if device and not device.isspace()
|
||||
)
|
||||
|
||||
|
||||
def _parse_linux_cdrom_info(f):
|
||||
drive_names = []
|
||||
drive_audio_caps = []
|
||||
@@ -106,14 +115,7 @@ else:
|
||||
# There might be more drives we couldn't detect
|
||||
# setting uses a text field instead of a drop-down
|
||||
AUTO_DETECT_DRIVES = False
|
||||
|
||||
def _iter_drives():
|
||||
config = get_config()
|
||||
yield from (
|
||||
device.strip() for device
|
||||
in config.setting["cd_lookup_device"].split(",")
|
||||
if device and not device.isspace()
|
||||
)
|
||||
_iter_drives = _generic_iter_drives
|
||||
|
||||
|
||||
def get_cdrom_drives():
|
||||
|
||||
@@ -100,7 +100,21 @@ class GetCdromDrivesTest(PicardTestCase):
|
||||
|
||||
def test_get_cdrom_drives(self):
|
||||
self.set_config_values({"cd_lookup_device": "/dev/cdrom"})
|
||||
self.assertIsInstance(cdrom.get_cdrom_drives(), Iterable)
|
||||
# Independent of the implementation get_cdrom_drives must not rais
|
||||
# and return an Iterable.
|
||||
drives = cdrom.get_cdrom_drives()
|
||||
self.assertIsInstance(drives, Iterable)
|
||||
self.assertTrue(set(cdrom.DEFAULT_DRIVES).issubset(drives))
|
||||
|
||||
def test_generic_iter_drives(self):
|
||||
self.set_config_values({"cd_lookup_device": "/dev/cdrom"})
|
||||
self.assertEqual(["/dev/cdrom"], list(cdrom._generic_iter_drives()))
|
||||
self.set_config_values({"cd_lookup_device": "/dev/cdrom, /dev/sr0"})
|
||||
self.assertEqual(["/dev/cdrom", "/dev/sr0"], list(cdrom._generic_iter_drives()))
|
||||
self.set_config_values({"cd_lookup_device": ""})
|
||||
self.assertEqual([], list(cdrom._generic_iter_drives()))
|
||||
self.set_config_values({"cd_lookup_device": " ,, ,\t, "})
|
||||
self.assertEqual([], list(cdrom._generic_iter_drives()))
|
||||
|
||||
|
||||
@unittest.skipUnless(IS_WIN, "windows test")
|
||||
|
||||
Reference in New Issue
Block a user