Revision 98270691 test/ganeti.rapi.rlib2_unittest.py

b/test/ganeti.rapi.rlib2_unittest.py
654 654
    self.assertRaises(http.HttpBadRequest, handler.PUT)
655 655

  
656 656

  
657
class TestStorageRepair(unittest.TestCase):
658
  def test(self):
659
    clfactory = _FakeClientFactory(_FakeClient)
660
    queryargs = {
661
      "storage_type": constants.ST_LVM_PV,
662
      "name": "pv16611",
663
      }
664
    handler = _CreateHandler(rlib2.R_2_nodes_name_storage_repair,
665
                             ["node19265"], queryargs, {}, clfactory)
666
    job_id = handler.PUT()
667

  
668
    cl = clfactory.GetNextClient()
669
    self.assertRaises(IndexError, clfactory.GetNextClient)
670

  
671
    (exp_job_id, (op, )) = cl.GetNextSubmittedJob()
672
    self.assertEqual(job_id, exp_job_id)
673
    self.assertTrue(isinstance(op, opcodes.OpRepairNodeStorage))
674
    self.assertEqual(op.node_name, "node19265")
675
    self.assertEqual(op.storage_type, constants.ST_LVM_PV)
676
    self.assertEqual(op.name, "pv16611")
677
    self.assertFalse(hasattr(op, "dry_run"))
678
    self.assertFalse(hasattr(op, "force"))
679

  
680
    self.assertRaises(IndexError, cl.GetNextSubmittedJob)
681

  
682
  def testErrors(self):
683
    clfactory = _FakeClientFactory(_FakeClient)
684

  
685
    # No storage type
686
    queryargs = {
687
      "name": "xyz",
688
      }
689
    handler = _CreateHandler(rlib2.R_2_nodes_name_storage_repair,
690
                             ["node11275"], queryargs, {}, clfactory)
691
    self.assertRaises(http.HttpBadRequest, handler.PUT)
692

  
693
    # No name
694
    queryargs = {
695
      "storage_type": constants.ST_LVM_VG,
696
      }
697
    handler = _CreateHandler(rlib2.R_2_nodes_name_storage_repair,
698
                             ["node21218"], queryargs, {}, clfactory)
699
    self.assertRaises(http.HttpBadRequest, handler.PUT)
700

  
701

  
657 702
class TestParseInstanceCreateRequestVersion1(testutils.GanetiTestCase):
658 703
  def setUp(self):
659 704
    testutils.GanetiTestCase.setUp(self)

Also available in: Unified diff