Revision 5d28cb6f test/ganeti.query_unittest.py
b/test/ganeti.query_unittest.py | ||
---|---|---|
539 | 539 |
nics=[objects.NIC(ip="192.0.2.99", nicparams={})]), |
540 | 540 |
] |
541 | 541 |
|
542 |
iqd = query.InstanceQueryData(instances, cluster, None, [], [], {}, set()) |
|
542 |
iqd = query.InstanceQueryData(instances, cluster, None, [], [], {}, |
|
543 |
set(), {}) |
|
543 | 544 |
self.assertEqual(q.Query(iqd), |
544 | 545 |
[[(constants.RS_NORMAL, "inst1"), |
545 | 546 |
(constants.RS_NORMAL, 128), |
... | ... | |
567 | 568 |
|
568 | 569 |
q = self._Create(selected) |
569 | 570 |
self.assertEqual(q.RequestedData(), |
570 |
set([query.IQ_CONFIG, query.IQ_LIVE, query.IQ_DISKUSAGE])) |
|
571 |
set([query.IQ_CONFIG, query.IQ_LIVE, query.IQ_DISKUSAGE, |
|
572 |
query.IQ_CONSOLE])) |
|
571 | 573 |
|
572 | 574 |
cluster = objects.Cluster(cluster_name="testcluster", |
573 | 575 |
hvparams=constants.HVC_DEFAULTS, |
... | ... | |
671 | 673 |
|
672 | 674 |
assert not utils.FindDuplicates(inst.name for inst in instances) |
673 | 675 |
|
676 |
instbyname = dict((inst.name, inst) for inst in instances) |
|
677 |
|
|
674 | 678 |
disk_usage = dict((inst.name, |
675 | 679 |
cmdlib._ComputeDiskSize(inst.disk_template, |
676 | 680 |
[{"size": disk.size} |
... | ... | |
696 | 700 |
} |
697 | 701 |
wrongnode_inst = set("inst2") |
698 | 702 |
|
703 |
consinfo = dict((inst.name, None) for inst in instances) |
|
704 |
consinfo["inst7"] = \ |
|
705 |
objects.InstanceConsole(instance="inst7", kind=constants.CONS_SSH, |
|
706 |
host=instbyname["inst7"].primary_node, |
|
707 |
user=constants.GANETI_RUNAS, |
|
708 |
command=["hostname"]).ToDict() |
|
709 |
|
|
699 | 710 |
iqd = query.InstanceQueryData(instances, cluster, disk_usage, |
700 | 711 |
offline_nodes, bad_nodes, live_data, |
701 |
wrongnode_inst) |
|
712 |
wrongnode_inst, consinfo)
|
|
702 | 713 |
result = q.Query(iqd) |
703 | 714 |
self.assertEqual(len(result), len(instances)) |
704 | 715 |
self.assert_(compat.all(len(row) == len(selected) |
... | ... | |
792 | 803 |
exp = (constants.RS_NORMAL, getattr(inst, field)) |
793 | 804 |
self.assertEqual(row[fieldidx[field]], exp) |
794 | 805 |
|
806 |
self._CheckInstanceConsole(inst, row[fieldidx["console"]]) |
|
807 |
|
|
795 | 808 |
# Ensure all possible status' have been tested |
796 | 809 |
self.assertEqual(tested_status, |
797 | 810 |
set(["ERROR_nodeoffline", "ERROR_nodedown", |
798 | 811 |
"running", "ERROR_up", "ERROR_down", |
799 | 812 |
"ADMIN_down"])) |
800 | 813 |
|
814 |
def _CheckInstanceConsole(self, instance, (status, consdata)): |
|
815 |
if instance.name == "inst7": |
|
816 |
self.assertEqual(status, constants.RS_NORMAL) |
|
817 |
console = objects.InstanceConsole.FromDict(consdata) |
|
818 |
self.assertTrue(console.Validate()) |
|
819 |
self.assertEqual(console.host, instance.primary_node) |
|
820 |
else: |
|
821 |
self.assertEqual(status, constants.RS_UNAVAIL) |
|
822 |
|
|
801 | 823 |
|
802 | 824 |
class TestGroupQuery(unittest.TestCase): |
803 | 825 |
|
Also available in: Unified diff