LGTM, thanks
On Thu, Aug 22, 2013 at 10:55 AM, Michele Tartara <[email protected]>wrote: > The function was not unit tested previously. > > Signed-off-by: Michele Tartara <[email protected]> > --- > Makefile.am | 2 + > test/data/proc_cpuinfo.txt | 104 > +++++++++++++++++++++++++++++++++ > test/data/proc_meminfo.txt | 42 +++++++++++++ > test/py/ganeti.hypervisor_unittest.py | 12 ++++ > 4 files changed, 160 insertions(+) > create mode 100644 test/data/proc_cpuinfo.txt > create mode 100644 test/data/proc_meminfo.txt > > diff --git a/Makefile.am b/Makefile.am > index 531197c..7aef305 100644 > --- a/Makefile.am > +++ b/Makefile.am > @@ -1144,6 +1144,8 @@ TEST_FILES = \ > test/data/proc_drbd83_sync.txt \ > test/data/proc_drbd83_sync_want.txt \ > test/data/proc_drbd83_sync_krnl2.6.39.txt \ > + test/data/proc_meminfo.txt \ > + test/data/proc_cpuinfo.txt \ > test/data/qa-minimal-nodes-instances-only.json \ > test/data/sys_drbd_usermode_helper.txt \ > test/data/vgreduce-removemissing-2.02.02.txt \ > diff --git a/test/data/proc_cpuinfo.txt b/test/data/proc_cpuinfo.txt > new file mode 100644 > index 0000000..4637a5a > --- /dev/null > +++ b/test/data/proc_cpuinfo.txt > @@ -0,0 +1,104 @@ > +processor : 0 > +vendor_id : GenuineIntel > +cpu family : 6 > +model : 58 > +model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz > +stepping : 9 > +microcode : 0x13 > +cpu MHz : 1200.000 > +cache size : 3072 KB > +physical id : 0 > +siblings : 4 > +core id : 0 > +cpu cores : 2 > +apicid : 0 > +initial apicid : 0 > +fpu : yes > +fpu_exception : yes > +cpuid level : 13 > +wp : yes > +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca > cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx > rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology > nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 > ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer > aes xsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm > tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms > +bogomips : 5188.22 > +clflush size : 64 > +cache_alignment : 64 > +address sizes : 36 bits physical, 48 bits virtual > +power management: > + > +processor : 1 > +vendor_id : GenuineIntel > +cpu family : 6 > +model : 58 > +model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz > +stepping : 9 > +microcode : 0x13 > +cpu MHz : 1200.000 > +cache size : 3072 KB > +physical id : 0 > +siblings : 4 > +core id : 0 > +cpu cores : 2 > +apicid : 1 > +initial apicid : 1 > +fpu : yes > +fpu_exception : yes > +cpuid level : 13 > +wp : yes > +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca > cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx > rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology > nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 > ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer > aes xsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm > tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms > +bogomips : 5188.22 > +clflush size : 64 > +cache_alignment : 64 > +address sizes : 36 bits physical, 48 bits virtual > +power management: > + > +processor : 2 > +vendor_id : GenuineIntel > +cpu family : 6 > +model : 58 > +model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz > +stepping : 9 > +microcode : 0x13 > +cpu MHz : 1200.000 > +cache size : 3072 KB > +physical id : 0 > +siblings : 4 > +core id : 1 > +cpu cores : 2 > +apicid : 2 > +initial apicid : 2 > +fpu : yes > +fpu_exception : yes > +cpuid level : 13 > +wp : yes > +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca > cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx > rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology > nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 > ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer > aes xsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm > tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms > +bogomips : 5188.22 > +clflush size : 64 > +cache_alignment : 64 > +address sizes : 36 bits physical, 48 bits virtual > +power management: > + > +processor : 3 > +vendor_id : GenuineIntel > +cpu family : 6 > +model : 58 > +model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz > +stepping : 9 > +microcode : 0x13 > +cpu MHz : 1200.000 > +cache size : 3072 KB > +physical id : 0 > +siblings : 4 > +core id : 1 > +cpu cores : 2 > +apicid : 3 > +initial apicid : 3 > +fpu : yes > +fpu_exception : yes > +cpuid level : 13 > +wp : yes > +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca > cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx > rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology > nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 > ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer > aes xsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm > tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms > +bogomips : 5188.22 > +clflush size : 64 > +cache_alignment : 64 > +address sizes : 36 bits physical, 48 bits virtual > +power management: > + > diff --git a/test/data/proc_meminfo.txt b/test/data/proc_meminfo.txt > new file mode 100644 > index 0000000..c3a80fb > --- /dev/null > +++ b/test/data/proc_meminfo.txt > @@ -0,0 +1,42 @@ > +MemTotal: 7870584 kB > +MemFree: 1549012 kB > +Buffers: 227328 kB > +Cached: 4647780 kB > +SwapCached: 2988 kB > +Active: 2787880 kB > +Inactive: 3160328 kB > +Active(anon): 1951852 kB > +Inactive(anon): 2007648 kB > +Active(file): 836028 kB > +Inactive(file): 1152680 kB > +Unevictable: 36 kB > +Mlocked: 32 kB > +SwapTotal: 8077308 kB > +SwapFree: 8029968 kB > +Dirty: 84 kB > +Writeback: 0 kB > +AnonPages: 1070164 kB > +Mapped: 194876 kB > +Shmem: 2886396 kB > +Slab: 226092 kB > +SReclaimable: 169140 kB > +SUnreclaim: 56952 kB > +KernelStack: 4232 kB > +PageTables: 40184 kB > +NFS_Unstable: 0 kB > +Bounce: 0 kB > +WritebackTmp: 0 kB > +CommitLimit: 12012600 kB > +Committed_AS: 7618508 kB > +VmallocTotal: 34359738367 kB > +VmallocUsed: 374800 kB > +VmallocChunk: 34359352560 kB > +HardwareCorrupted: 0 kB > +AnonHugePages: 0 kB > +HugePages_Total: 0 > +HugePages_Free: 0 > +HugePages_Rsvd: 0 > +HugePages_Surp: 0 > +Hugepagesize: 2048 kB > +DirectMap4k: 96448 kB > +DirectMap2M: 7983104 kB > diff --git a/test/py/ganeti.hypervisor_unittest.py b/test/py/ > ganeti.hypervisor_unittest.py > index 1d3e524..88b82bc 100755 > --- a/test/py/ganeti.hypervisor_unittest.py > +++ b/test/py/ganeti.hypervisor_unittest.py > @@ -57,6 +57,18 @@ class TestBase(unittest.TestCase): > self.assertEqual(fn(["a"]), "a") > self.assertEqual(fn(["a", "b"]), "a; b") > > + def testGetLinuxNodeInfo(self): > + meminfo = testutils.TestDataFilename("proc_meminfo.txt") > + cpuinfo = testutils.TestDataFilename("proc_cpuinfo.txt") > + result = hv_base.BaseHypervisor.GetLinuxNodeInfo(meminfo, cpuinfo) > + print result > + self.assertEqual(result["memory_total"], 7686) > + self.assertEqual(result["memory_free"], 6272) > + self.assertEqual(result["memory_dom0"], 2722) > + self.assertEqual(result["cpu_total"], 4) > + self.assertEqual(result["cpu_nodes"], 1) > + self.assertEqual(result["cpu_sockets"], 1) > + > > if __name__ == "__main__": > testutils.GanetiTestProgram() > -- > 1.7.10.4 > >
