Revision af95196c test/py/ganeti.bootstrap_unittest.py

b/test/py/ganeti.bootstrap_unittest.py
27 27

  
28 28
from ganeti import bootstrap
29 29
from ganeti import constants
30
from ganeti.storage import drbd
30 31
from ganeti import errors
31 32
from ganeti import pathutils
32 33

  
......
130 131
    self.assertEqual(ipolicy[constants.IPOLICY_DTS], [constants.DT_PLAIN])
131 132

  
132 133

  
134
class TestInitCheckDrbdHelper(unittest.TestCase):
135

  
136
  @testutils.patch_object(drbd.DRBD8, "GetUsermodeHelper")
137
  def testHelperNone(self, drbd_mock_get_usermode_helper):
138
    current_helper = "/bin/helper"
139
    drbd_helper = None
140
    drbd_mock_get_usermode_helper.return_value = current_helper
141
    bootstrap._InitCheckDrbdHelper(drbd_helper)
142

  
143
  @testutils.patch_object(drbd.DRBD8, "GetUsermodeHelper")
144
  def testHelperOk(self, drbd_mock_get_usermode_helper):
145
    current_helper = "/bin/helper"
146
    drbd_helper = "/bin/helper"
147
    drbd_mock_get_usermode_helper.return_value = current_helper
148
    bootstrap._InitCheckDrbdHelper(drbd_helper)
149

  
150
  @testutils.patch_object(drbd.DRBD8, "GetUsermodeHelper")
151
  def testWrongHelper(self, drbd_mock_get_usermode_helper):
152
    current_helper = "/bin/otherhelper"
153
    drbd_helper = "/bin/helper"
154
    drbd_mock_get_usermode_helper.return_value = current_helper
155
    self.assertRaises(errors.OpPrereqError,
156
        bootstrap._InitCheckDrbdHelper, drbd_helper)
157

  
158
  @testutils.patch_object(drbd.DRBD8, "GetUsermodeHelper")
159
  def testHelperCheckFails(self, drbd_mock_get_usermode_helper):
160
    drbd_helper = "/bin/helper"
161
    drbd_mock_get_usermode_helper.side_effect=errors.BlockDeviceError
162
    self.assertRaises(errors.OpPrereqError,
163
        bootstrap._InitCheckDrbdHelper, drbd_helper)
164

  
165

  
133 166
if __name__ == "__main__":
134 167
  testutils.GanetiTestProgram()

Also available in: Unified diff