1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
|
require 'spec_helper'
str = <<-EOH
MemTotal: 1019392 kB
MemFree: 88248 kB
Buffers: 26016 kB
Cached: 312856 kB
SwapCached: 87708 kB
Active: 396664 kB
Inactive: 444580 kB
Active(anon): 242816 kB
Inactive(anon): 308412 kB
Active(file): 153848 kB
Inactive(file): 136168 kB
Unevictable: 16 kB
Mlocked: 16 kB
HighTotal: 131912 kB
HighFree: 312 kB
LowTotal: 887480 kB
LowFree: 87936 kB
SwapTotal: 2064380 kB
SwapFree: 1760500 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 473868 kB
Mapped: 68192 kB
Shmem: 48856 kB
Slab: 57696 kB
SReclaimable: 14152 kB
SUnreclaim: 43544 kB
KernelStack: 3240 kB
PageTables: 12144 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 2574076 kB
Committed_AS: 2517964 kB
VmallocTotal: 122880 kB
VmallocUsed: 11204 kB
VmallocChunk: 95432 kB
AnonHugePages: 92160 kB
HugePages_Total: 189440
HugePages_Free: 189440
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 907256 kB
DirectMap2M: 0 kB
EOH
describe Specinfra::HostInventory::Memory do
let(:host_inventory) { nil }
describe 'Example of CentOS 6.6 Kernel version 2.6.32-504.23.4.el6.i686' do
ret = Specinfra::HostInventory::Memory.new(host_inventory).parse(str)
example "active" do
expect(ret["active"]).to include("396664kB")
end
example "anon_pages" do
expect(ret["anon_pages"]).to include("473868kB")
end
example "bounce" do
expect(ret["bounce"]).to include("0kB")
end
example "buffers" do
expect(ret["buffers"]).to include("26016kB")
end
example "cached" do
expect(ret["cached"]).to include("312856kB")
end
example "commited_as" do
expect(ret["committed_as"]).to include("2517964kB")
end
example "commit_limit" do
expect(ret["commit_limit"]).to include("2574076kB")
end
example "dirty" do
expect(ret["dirty"]).to include("0kB")
end
example "free" do
expect(ret["free"]).to include("88248kB")
end
example "inactive" do
expect(ret["inactive"]).to include("444580kB")
end
example "mapped" do
expect(ret["mapped"]).to include("68192kB")
end
example "nfs_unstable" do
expect(ret["nfs_unstable"]).to include("0kB")
end
example "page_tables" do
expect(ret["page_tables"]).to include("12144kB")
end
example "slab" do
expect(ret["slab"]).to include("57696kB")
end
example "slab_reclaimable" do
expect(ret["slab_reclaimable"]).to include("14152kB")
end
example "slab_unreclaim" do
expect(ret["slab_unreclaim"]).to include("43544kB")
end
example "swap" do
expect(ret["swap"]).to include(
"free" => "1760500kB",
"total" => "2064380kB",
"cached" => "87708kB"
)
end
example "total" do
expect(ret["total"]).to include("1019392kB")
end
example "vmalloc_chunk" do
expect(ret["vmalloc_chunk"]).to include("95432kB")
end
example "vmalloc_total" do
expect(ret["vmalloc_total"]).to include("122880kB")
end
example "vmalloc_used" do
expect(ret["vmalloc_used"]).to include("11204kB")
end
example "writeback" do
expect(ret["writeback"]).to include("0kB")
end
example "annon_huge_pages" do
expect(ret["annon_huge_pages"]).to include("92160kB")
end
example "huge_pages_total" do
expect(ret["huge_pages_total"]).to include("189440")
end
example "huge_pages_free" do
expect(ret["huge_pages_free"]).to include("189440")
end
example "huge_pages_rsvd" do
expect(ret["huge_pages_rsvd"]).to include("0")
end
example "huge_pages_surp" do
expect(ret["huge_pages_surp"]).to include("0")
end
example "huge_page_size" do
expect(ret["huge_page_size"]).to include("2048kB")
end
end
end
|