Revision a6070ef7 test/ganeti.query_unittest.py

b/test/ganeti.query_unittest.py
434 434

  
435 435
  def testGetLiveNodeField(self):
436 436
    nodes = [
437
      objects.Node(name="node1", drained=False),
438
      objects.Node(name="node2", drained=True),
439
      objects.Node(name="node3", drained=False),
437
      objects.Node(name="node1", drained=False, offline=False),
438
      objects.Node(name="node2", drained=True, offline=False),
439
      objects.Node(name="node3", drained=False, offline=False),
440
      objects.Node(name="node4", drained=False, offline=True),
440 441
      ]
441 442
    live_data = dict.fromkeys([node.name for node in nodes], {})
442 443

  
443 444
    # No data
444 445
    nqd = query.NodeQueryData(None, None, None, None, None, None)
445 446
    self.assertEqual(query._GetLiveNodeField("hello", constants.QFT_NUMBER,
446
                                             nqd, None),
447
                                             nqd, nodes[0]),
447 448
                     (constants.QRFS_NODATA, None))
448 449

  
449 450
    # Missing field
......
452 453
      "other": 2,
453 454
      })
454 455
    self.assertEqual(query._GetLiveNodeField("hello", constants.QFT_NUMBER,
455
                                             ctx, None),
456
                                             ctx, nodes[0]),
456 457
                     (constants.QRFS_UNAVAIL, None))
457 458

  
458 459
    # Wrong format/datatype
......
461 462
      "other": 2,
462 463
      })
463 464
    self.assertEqual(query._GetLiveNodeField("hello", constants.QFT_NUMBER,
464
                                             ctx, None),
465
                                             ctx, nodes[0]),
465 466
                     (constants.QRFS_UNAVAIL, None))
466 467

  
468
    # Offline node
469
    assert nodes[3].offline
470
    ctx = _QueryData(None, curlive_data={})
471
    self.assertEqual(query._GetLiveNodeField("hello", constants.QFT_NUMBER,
472
                                             ctx, nodes[3]),
473
                     (constants.QRFS_OFFLINE, None))
474

  
467 475
    # Wrong field type
468 476
    ctx = _QueryData(None, curlive_data={"hello": 123})
469 477
    self.assertRaises(AssertionError, query._GetLiveNodeField,
470
                      "hello", constants.QFT_BOOL, ctx, None)
478
                      "hello", constants.QFT_BOOL, ctx, nodes[0])
471 479

  
472 480

  
473 481
class TestInstanceQuery(unittest.TestCase):

Also available in: Unified diff