Update tests accordingly.
Signed-off-by: mulhern <amulhern(a)redhat.com>
---
blivet/devicelibs/raid.py | 5 ++++-
blivet/devices.py | 2 +-
tests/devicelibs_test/raid_test.py | 1 +
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/blivet/devicelibs/raid.py b/blivet/devicelibs/raid.py
index 84f2aa1..33af02f 100644
--- a/blivet/devicelibs/raid.py
+++ b/blivet/devicelibs/raid.py
@@ -303,11 +303,14 @@ class RAIDLevels(object):
:param object descriptor: a RAID level descriptor
+ Note that descriptor may be any object that identifies a
+ RAID level, including the RAID object itself.
+
Raises a RaidError if no RAID object can be found for this
descriptor.
"""
for level in self._raid_levels:
- if descriptor in level.names:
+ if descriptor in level.names or descriptor == level:
return level
raise RaidError("invalid RAID level descriptor %s" % descriptor)
diff --git a/blivet/devices.py b/blivet/devices.py
index e8004b7..9480bae 100644
--- a/blivet/devices.py
+++ b/blivet/devices.py
@@ -3277,7 +3277,7 @@ class MDRaidArrayDevice(ContainerDevice):
:type uuid: str
:keyword level: the device's RAID level
- :type level: str (eg: "raid1")
+ :type level: any valid RAID level descriptor
:keyword int memberDevices: the number of active member devices
:keyword int totalDevices: the total number of member devices
:keyword metadataVersion: the version of the device's md metadata
diff --git a/tests/devicelibs_test/raid_test.py b/tests/devicelibs_test/raid_test.py
index e192aea..f32c59e 100644
--- a/tests/devicelibs_test/raid_test.py
+++ b/tests/devicelibs_test/raid_test.py
@@ -45,6 +45,7 @@ class RaidTestCase(unittest.TestCase):
self.assertIs(self.levels.raidLevel("raid4"), raid.RAID4)
self.assertIs(self.levels.raidLevel("mirror"), raid.RAID1)
self.assertIs(self.levels.raidLevel("stripe"), raid.RAID0)
+ self.assertIs(self.levels.raidLevel(raid.RAID0), raid.RAID0)
self.assertRaises(errors.RaidError, self.levels.raidLevel, "bogus")
--
1.8.3.1