Revision 06c9a520 test/py/ganeti.hypervisor.hv_xen_unittest.py

b/test/py/ganeti.hypervisor.hv_xen_unittest.py
152 152
    self.assertEqual(fn.Count(), 1)
153 153

  
154 154

  
155
class TestParseNodeInfo(testutils.GanetiTestCase):
156
  def testEmpty(self):
157
    self.assertEqual(hv_xen._ParseNodeInfo(""), {})
158

  
159
  def testUnknownInput(self):
160
    data = "\n".join([
161
      "foo bar",
162
      "something else goes",
163
      "here",
164
      ])
165
    self.assertEqual(hv_xen._ParseNodeInfo(data), {})
166

  
167
  def testBasicInfo(self):
168
    data = testutils.ReadTestData("xen-xm-info-4.0.1.txt")
169
    result = hv_xen._ParseNodeInfo(data)
170
    self.assertEqual(result, {
171
      "cpu_nodes": 1,
172
      "cpu_sockets": 2,
173
      "cpu_total": 4,
174
      "hv_version": (4, 0),
175
      "memory_free": 8004,
176
      "memory_total": 16378,
177
      })
178

  
179

  
180
class TestMergeInstanceInfo(testutils.GanetiTestCase):
181
  def testEmpty(self):
182
    self.assertEqual(hv_xen._MergeInstanceInfo({}, lambda _: []), {})
183

  
184
  def _FakeXmList(self, include_node):
185
    self.assertTrue(include_node)
186
    return [
187
      (hv_xen._DOM0_NAME, NotImplemented, 4096, 7, NotImplemented,
188
       NotImplemented),
189
      ("inst1.example.com", NotImplemented, 2048, 4, NotImplemented,
190
       NotImplemented),
191
      ]
192

  
193
  def testMissingNodeInfo(self):
194
    result = hv_xen._MergeInstanceInfo({}, self._FakeXmList)
195
    self.assertEqual(result, {
196
      "memory_dom0": 4096,
197
      "dom0_cpus": 7,
198
      })
199

  
200
  def testWithNodeInfo(self):
201
    info = testutils.ReadTestData("xen-xm-info-4.0.1.txt")
202
    result = hv_xen._GetNodeInfo(info, self._FakeXmList)
203
    self.assertEqual(result, {
204
      "cpu_nodes": 1,
205
      "cpu_sockets": 2,
206
      "cpu_total": 4,
207
      "dom0_cpus": 7,
208
      "hv_version": (4, 0),
209
      "memory_dom0": 4096,
210
      "memory_free": 8004,
211
      "memory_hv": 2230,
212
      "memory_total": 16378,
213
      })
214

  
215

  
155 216
if __name__ == "__main__":
156 217
  testutils.GanetiTestProgram()

Also available in: Unified diff