Revision 1b9e1f42

b/test/py/ganeti.hypervisor.hv_xen_unittest.py
716 716

  
717 717
        self.assertEqual(ping_fn.Count(), expected_pings)
718 718

  
719
  def _GetNodeInfoCmd(self, fail, cmd):
720
    if cmd == [self.CMD, "info"]:
721
      if fail:
722
        return self._FailingCommand(cmd)
723
      else:
724
        output = testutils.ReadTestData("xen-xm-info-4.0.1.txt")
725
    elif cmd == [self.CMD, "list"]:
726
      if fail:
727
        self.fail("'xm list' shouldn't be called when 'xm info' failed")
728
      else:
729
        output = testutils.ReadTestData("xen-xm-list-4.0.1-four-instances.txt")
730
    else:
731
      self.fail("Unhandled command: %s" % (cmd, ))
732

  
733
    return self._SuccessCommand(output, cmd)
734

  
735
  def testGetNodeInfo(self):
736
    run_cmd = compat.partial(self._GetNodeInfoCmd, False)
737
    hv = self._GetHv(run_cmd=run_cmd)
738
    result = hv.GetNodeInfo()
739

  
740
    self.assertEqual(result["hv_version"], (4, 0))
741
    self.assertEqual(result["memory_free"], 8004)
742

  
743
  def testGetNodeInfoFailing(self):
744
    run_cmd = compat.partial(self._GetNodeInfoCmd, True)
745
    hv = self._GetHv(run_cmd=run_cmd)
746
    self.assertTrue(hv.GetNodeInfo() is None)
747

  
719 748

  
720 749
def _MakeTestClass(cls, cmd):
721 750
  """Makes a class for testing.

Also available in: Unified diff