Beispiel #1
0
    def test_valid_checks_for_two_periods(self):
        """device_id must have exactly two '.' chars"""

        nodots = self.random_string()
        onedot = "%s.%s" % (nodots, self.random_string())
        threedots = "%s.%s." % (onedot, self.random_string())

        for invalid in [nodots, onedot, threedots]:
            self.assertNotEqual(2, invalid.count('.'))
            with self.assertRaises(ValueError):
                dasd.DasdDevice(invalid)

        valid = random_device_id()
        self.assertEqual(2, valid.count('.'))
        dasd.DasdDevice(valid)
Beispiel #2
0
    def setUp(self):
        super(TestLabel, self).setUp()
        self.add_patch('curtin.block.dasd.dasdinfo', 'm_dasdinfo')

        # defaults
        self.m_dasdinfo.return_value = self.info
        self.dasd = dasd.DasdDevice(random_device_id())
Beispiel #3
0
 def test_valid_checks_for_three_values_after_split(self):
     """device_id must have exactly three non-empty strings after split."""
     missing_css = ".dsn.dev"
     missing_dsn = "css..dev"
     missing_dev = "css.dsn."
     for invalid in [missing_css, missing_dsn, missing_dev]:
         self.assertEqual(2, invalid.count('.'))
         with self.assertRaises(ValueError):
             dasd.DasdDevice(invalid)
Beispiel #4
0
    def setUp(self):
        super(TestDiskLayout, self).setUp()
        self.add_patch('curtin.block.dasd.dasd_format', 'm_dasd_format')
        dpath = 'curtin.block.dasd.DasdDevice'
        self.add_patch(dpath + '.devname', 'm_devname')

        self.dasd = dasd.DasdDevice(random_device_id())
        self.devname = self.random_string()
        self.m_devname.return_value = self.devname
Beispiel #5
0
    def setUp(self):
        super(TestDasdDeviceIdToKname, self).setUp()
        self.add_patch('curtin.block.dasd.os.path.isdir', 'm_isdir')
        self.add_patch('curtin.block.dasd.os.listdir', 'm_listdir')
        self.add_patch('curtin.block.dasd.DasdDevice.is_online', 'm_online')

        self.dasd = dasd.DasdDevice(random_device_id())
        self.m_online.return_value = True
        self.m_isdir.return_value = True
        self.m_listdir.return_value = [self.random_string()]
Beispiel #6
0
    def setUp(self):
        super(TestDasdCcwDeviceAttr, self).setUp()
        self.add_patch('curtin.block.dasd.os.path.isfile', 'm_isfile')
        self.add_patch('curtin.block.dasd.util.load_file', 'm_loadfile')
        self.add_patch('curtin.block.dasd.glob.glob', 'm_glob')

        # defaults
        self.m_isfile.return_value = True
        self.m_loadfile.return_value = self.random_string()
        self.dasd = dasd.DasdDevice(random_device_id())
Beispiel #7
0
    def setUp(self):
        super(TestFormat, self).setUp()
        self.add_patch('curtin.block.dasd.os.path.exists', 'm_exists')
        self.add_patch('curtin.block.dasd.util.subp', 'm_subp')
        dpath = 'curtin.block.dasd.DasdDevice'
        self.add_patch(dpath + '.devname', 'm_devname')

        # defaults
        self.m_exists.return_value = True
        self.m_subp.return_value = (None, None)
        self.dasd = dasd.DasdDevice(random_device_id())
        self.devname = self.random_string()
        self.m_devname.return_value = self.devname
Beispiel #8
0
    def setUp(self):
        super(TestDiskLayout, self).setUp()
        self.add_patch('curtin.block.dasd.os.path.exists', 'm_exists')
        self.add_patch('curtin.block.dasd.dasdview', 'm_dasdview')
        dpath = 'curtin.block.dasd.DasdDevice'
        self.add_patch(dpath + '.devname', 'm_devname')

        # defaults
        self.m_exists.return_value = True
        self.m_dasdview.return_value = self._mkview()
        self.dasd = dasd.DasdDevice(random_device_id())
        self.devname = self.random_string()
        self.m_devname.return_value = self.devname
Beispiel #9
0
    def setUp(self):
        super(TestNeedsFormatting, self).setUp()
        dpath = 'curtin.block.dasd.DasdDevice'
        self.add_patch(dpath + '.is_not_formatted', 'm_not_fmt')
        self.add_patch(dpath + '.blocksize', 'm_blocksize')
        self.add_patch(dpath + '.disk_layout', 'm_disk_layout')
        self.add_patch(dpath + '.label', 'm_label')

        self.m_not_fmt.return_value = False
        self.m_blocksize.return_value = 4096
        self.m_disk_layout.return_value = TestDiskLayout.layouts['cdl'].txt
        self.label = self.random_string()
        self.m_label.return_value = self.label

        self.dasd = dasd.DasdDevice(random_device_id())
Beispiel #10
0
 def test_valid_none_raises(self):
     """raises ValueError on none-ish values for device_id."""
     for invalid in self.invalids:
         with self.assertRaises(ValueError):
             dasd.DasdDevice(invalid)
Beispiel #11
0
 def test_valid_handles_non_hex_values(self):
     """device_id raises ValueError with non hex values in fields"""
     # build a device_id with 3 nonhex random values
     invalid_dev = ".".join([self.random_nonhex() for x in range(0, 3)])
     with self.assertRaises(ValueError):
         dasd.DasdDevice(invalid_dev)
Beispiel #12
0
 def test_valid_checks_dev_value(self):
     """device_id dev component must be in integer range of 0, 0xFFFF"""
     invalid_dev = "0.0.10001"
     with self.assertRaises(ValueError):
         dasd.DasdDevice(invalid_dev)
Beispiel #13
0
 def test_valid_checks_dsn_value(self):
     """device_id dsn component must be in integer range of 0, 256"""
     invalid_dsn = "f.ffff.abcd"
     with self.assertRaises(ValueError):
         dasd.DasdDevice(invalid_dsn)