Revision 99e222b1 test/ganeti.backend_unittest.py

b/test/ganeti.backend_unittest.py
482 482
      self.fail("Did not raise exception")
483 483

  
484 484

  
485
class TestSetWatcherPause(unittest.TestCase):
486
  def setUp(self):
487
    self.tmpdir = tempfile.mkdtemp()
488
    self.filename = utils.PathJoin(self.tmpdir, "pause")
489

  
490
  def tearDown(self):
491
    shutil.rmtree(self.tmpdir)
492

  
493
  def testUnsetNonExisting(self):
494
    self.assertFalse(os.path.exists(self.filename))
495
    backend.SetWatcherPause(None, _filename=self.filename)
496
    self.assertFalse(os.path.exists(self.filename))
497

  
498
  def testSetNonNumeric(self):
499
    for i in ["", [], {}, "Hello World", "0", "1.0"]:
500
      self.assertFalse(os.path.exists(self.filename))
501

  
502
      try:
503
        backend.SetWatcherPause(i, _filename=self.filename)
504
      except backend.RPCFail, err:
505
        self.assertEqual(str(err), "Duration must be numeric")
506
      else:
507
        self.fail("Did not raise exception")
508

  
509
      self.assertFalse(os.path.exists(self.filename))
510

  
511
  def testSet(self):
512
    self.assertFalse(os.path.exists(self.filename))
513

  
514
    for i in range(10):
515
      backend.SetWatcherPause(i, _filename=self.filename)
516
      self.assertEqual(utils.ReadFile(self.filename), "%s\n" % i)
517
      self.assertEqual(os.stat(self.filename).st_mode & 0777, 0644)
518

  
519

  
485 520
if __name__ == "__main__":
486 521
  testutils.GanetiTestProgram()

Also available in: Unified diff