diff options
author | Tim Smith <tsmith@chef.io> | 2017-04-03 20:42:27 -0700 |
---|---|---|
committer | Tim Smith <tsmith@chef.io> | 2017-04-03 20:42:27 -0700 |
commit | 9cf706651606715b638317924447b3a8dfafd4bd (patch) | |
tree | a251a79c6daa04c9aa4025db661550a19f87ac80 /spec | |
parent | 7d46875b830650d8a5ba1059ad16b9a18a664ec9 (diff) | |
download | ohai-9cf706651606715b638317924447b3a8dfafd4bd.tar.gz |
Fully replace filesystem with filesystem2 on Darwin and fix Linux specsfilesystem_2_no_more
Signed-off-by: Tim Smith <tsmith@chef.io>
Diffstat (limited to 'spec')
-rw-r--r-- | spec/unit/plugins/darwin/filesystem2_spec.rb | 139 | ||||
-rw-r--r-- | spec/unit/plugins/darwin/filesystem_spec.rb | 73 | ||||
-rw-r--r-- | spec/unit/plugins/linux/filesystem_spec.rb (renamed from spec/unit/plugins/linux/filesystem2_spec.rb) | 56 |
3 files changed, 89 insertions, 179 deletions
diff --git a/spec/unit/plugins/darwin/filesystem2_spec.rb b/spec/unit/plugins/darwin/filesystem2_spec.rb deleted file mode 100644 index 6ba89ac3..00000000 --- a/spec/unit/plugins/darwin/filesystem2_spec.rb +++ /dev/null @@ -1,139 +0,0 @@ -# -# Author:: Phil Dibowitz (<phil@ipom.com>) -# Copyright:: Copyright (c) 2015 Facebook, Inc. -# License:: Apache License, Version 2.0 -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -require_relative "../../../spec_helper.rb" - -describe Ohai::System, "darwin filesystem2 plugin" do - let (:plugin) { get_plugin("darwin/filesystem2") } - before(:each) do - allow(plugin).to receive(:collect_os).and_return(:darwin) - - allow(plugin).to receive(:shell_out).with("df -i").and_return(mock_shell_out(0, "", "")) - allow(plugin).to receive(:shell_out).with("mount").and_return(mock_shell_out(0, "", "")) - end - - describe "when gathering filesystem usage data from df" do - before(:each) do - @stdout = <<-DF -Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on -/dev/disk0s2 488555536 313696448 174347088 65% 39276054 21793386 64% / -devfs 385 385 0 100% 666 0 100% /dev -map /etc/auto.direct 0 0 0 100% 0 0 100% /mnt/vol -map -hosts 0 0 0 100% 0 0 100% /net -map -static 0 0 0 100% 0 0 100% /mobile_symbol -deweyfs@osxfuse0 0 0 0 100% 0 0 100% /mnt/dewey -DF - allow(plugin).to receive(:shell_out).with("df -i").and_return(mock_shell_out(0, @stdout, "")) - end - - it "should run df -i" do - expect(plugin).to receive(:shell_out).ordered.with("df -i").and_return(mock_shell_out(0, @stdout, "")) - plugin.run - end - - it "should set size to value from df -i" do - plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:kb_size]).to eq("244277768") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:kb_used]).to eq("156848224") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:kb_available]).to eq("87173544") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:percent_used]).to eq("65%") - end - - it "should set device and mount to value from df -i" do - plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:mount]).to eq("/") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:device]).to eq("/dev/disk0s2") - end - - it "should set inode info to value from df -i" do - plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:total_inodes]).to eq("61069440") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:inodes_used]).to eq("39276054") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:inodes_available]).to eq("21793386") - end - end - - describe "when gathering mounted filesystem data from mount" do - before(:each) do - @stdout = <<-MOUNT -/dev/disk0s2 on / (hfs, local, journaled) -devfs on /dev (devfs, local, nobrowse) -map /etc/auto.direct on /mnt/vol (autofs, automounted, nobrowse) -map -hosts on /net (autofs, nosuid, automounted, nobrowse) -map -static on /mobile_symbol (autofs, automounted, nobrowse) -deweyfs@osxfuse0 on /mnt/dewey (osxfusefs, synchronous, nobrowse) -MOUNT - allow(plugin).to receive(:shell_out).with("mount").and_return(mock_shell_out(0, @stdout, "")) - end - - it "should run mount" do - expect(plugin).to receive(:shell_out).with("mount").and_return(mock_shell_out(0, @stdout, "")) - plugin.run - end - - it "should set values from mount" do - plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:mount]).to eq("/") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:fs_type]).to eq("hfs") - expect(plugin[:filesystem2]["by_pair"]["/dev/disk0s2,/"][:mount_options]).to eq(%w{local journaled}) - end - end - - describe "when gathering filesystem data with devices mounted more than once" do - before(:each) do - @dfstdout = <<-DF -Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on -/dev/disk0s2 488555536 313696448 174347088 65% 39276054 21793386 64% / -devfs 385 385 0 100% 666 0 100% /dev -map /etc/auto.direct 0 0 0 100% 0 0 100% /mnt/vol -map -hosts 0 0 0 100% 0 0 100% /net -map -static 0 0 0 100% 0 0 100% /mobile_symbol -deweyfs@osxfuse0 0 0 0 100% 0 0 100% /mnt/dewey -/dev/disk0s2 488555536 313696448 174347088 65% 39276054 21793386 64% /another/mountpoint -DF - allow(plugin).to receive(:shell_out).with("df -i").and_return(mock_shell_out(0, @dfstdout, "")) - end - - it "should provide a devices view with all mountpoints" do - plugin.run - expect(plugin[:filesystem2]["by_device"]["/dev/disk0s2"][:mounts]).to eq(["/", "/another/mountpoint"]) - end - end - - describe "when gathering filesystem data with double-mounts" do - before(:each) do - @dfstdout = <<-DF -Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on -/dev/disk0s2 488555536 313696448 174347088 65% 39276054 21793386 64% / -devfs 385 385 0 100% 666 0 100% /dev -map /etc/auto.direct 0 0 0 100% 0 0 100% /mnt/vol -map -hosts 0 0 0 100% 0 0 100% /net -map -static 0 0 0 100% 0 0 100% /mobile_symbol -deweyfs@osxfuse0 0 0 0 100% 0 0 100% /mnt/dewey -/dev/disk0s3 488555536 313696448 174347088 65% 39276054 21793386 64% /mnt -/dev/disk0s4 488555536 313696448 174347088 65% 39276054 21793386 64% /mnt -DF - allow(plugin).to receive(:shell_out).with("df -i").and_return(mock_shell_out(0, @dfstdout, "")) - end - - it "should provide a mounts view with all devices" do - plugin.run - expect(plugin[:filesystem2]["by_mountpoint"]["/mnt"][:devices]).to eq(["/dev/disk0s3", "/dev/disk0s4"]) - end - end -end diff --git a/spec/unit/plugins/darwin/filesystem_spec.rb b/spec/unit/plugins/darwin/filesystem_spec.rb index d97a89d9..378d6da9 100644 --- a/spec/unit/plugins/darwin/filesystem_spec.rb +++ b/spec/unit/plugins/darwin/filesystem_spec.rb @@ -27,6 +27,11 @@ describe Ohai::System, "darwin filesystem plugin" do allow(plugin).to receive(:shell_out).with("mount").and_return(mock_shell_out(0, "", "")) end + it "sets both filesystem and filesystem2 attributes" do + plugin.run + expect(plugin[:filesystem]).to eq(plugin[:filesystem2]) + end + describe "when gathering filesystem usage data from df" do before(:each) do @stdout = <<-DF @@ -48,22 +53,23 @@ DF it "should set size to value from df -i" do plugin.run - expect(plugin[:filesystem]["/dev/disk0s2"][:kb_size]).to eq(244277768) - expect(plugin[:filesystem]["/dev/disk0s2"][:kb_used]).to eq(156848224) - expect(plugin[:filesystem]["/dev/disk0s2"][:kb_available]).to eq(87173544) - expect(plugin[:filesystem]["/dev/disk0s2"][:percent_used]).to eq("65%") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:kb_size]).to eq("244277768") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:kb_used]).to eq("156848224") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:kb_available]).to eq("87173544") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:percent_used]).to eq("65%") end - it "should set mount to value from df -i" do + it "should set device and mount to value from df -i" do plugin.run - expect(plugin[:filesystem]["/dev/disk0s2"][:mount]).to eq("/") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:mount]).to eq("/") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:device]).to eq("/dev/disk0s2") end it "should set inode info to value from df -i" do plugin.run - expect(plugin[:filesystem]["/dev/disk0s2"][:total_inodes]).to eq("61069440") - expect(plugin[:filesystem]["/dev/disk0s2"][:inodes_used]).to eq("39276054") - expect(plugin[:filesystem]["/dev/disk0s2"][:inodes_available]).to eq("21793386") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:total_inodes]).to eq("61069440") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:inodes_used]).to eq("39276054") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:inodes_available]).to eq("21793386") end end @@ -87,9 +93,52 @@ MOUNT it "should set values from mount" do plugin.run - expect(plugin[:filesystem]["/dev/disk0s2"][:mount]).to eq("/") - expect(plugin[:filesystem]["/dev/disk0s2"][:fs_type]).to eq("hfs") - expect(plugin[:filesystem]["/dev/disk0s2"][:mount_options]).to eq(%w{local journaled}) + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:mount]).to eq("/") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:fs_type]).to eq("hfs") + expect(plugin[:filesystem]["by_pair"]["/dev/disk0s2,/"][:mount_options]).to eq(%w{local journaled}) + end + end + + describe "when gathering filesystem data with devices mounted more than once" do + before(:each) do + @dfstdout = <<-DF +Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on +/dev/disk0s2 488555536 313696448 174347088 65% 39276054 21793386 64% / +devfs 385 385 0 100% 666 0 100% /dev +map /etc/auto.direct 0 0 0 100% 0 0 100% /mnt/vol +map -hosts 0 0 0 100% 0 0 100% /net +map -static 0 0 0 100% 0 0 100% /mobile_symbol +deweyfs@osxfuse0 0 0 0 100% 0 0 100% /mnt/dewey +/dev/disk0s2 488555536 313696448 174347088 65% 39276054 21793386 64% /another/mountpoint +DF + allow(plugin).to receive(:shell_out).with("df -i").and_return(mock_shell_out(0, @dfstdout, "")) + end + + it "should provide a devices view with all mountpoints" do + plugin.run + expect(plugin[:filesystem]["by_device"]["/dev/disk0s2"][:mounts]).to eq(["/", "/another/mountpoint"]) + end + end + + describe "when gathering filesystem data with double-mounts" do + before(:each) do + @dfstdout = <<-DF +Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on +/dev/disk0s2 488555536 313696448 174347088 65% 39276054 21793386 64% / +devfs 385 385 0 100% 666 0 100% /dev +map /etc/auto.direct 0 0 0 100% 0 0 100% /mnt/vol +map -hosts 0 0 0 100% 0 0 100% /net +map -static 0 0 0 100% 0 0 100% /mobile_symbol +deweyfs@osxfuse0 0 0 0 100% 0 0 100% /mnt/dewey +/dev/disk0s3 488555536 313696448 174347088 65% 39276054 21793386 64% /mnt +/dev/disk0s4 488555536 313696448 174347088 65% 39276054 21793386 64% /mnt +DF + allow(plugin).to receive(:shell_out).with("df -i").and_return(mock_shell_out(0, @dfstdout, "")) + end + + it "should provide a mounts view with all devices" do + plugin.run + expect(plugin[:filesystem]["by_mountpoint"]["/mnt"][:devices]).to eq(["/dev/disk0s3", "/dev/disk0s4"]) end end end diff --git a/spec/unit/plugins/linux/filesystem2_spec.rb b/spec/unit/plugins/linux/filesystem_spec.rb index 33e26f49..f1880e3c 100644 --- a/spec/unit/plugins/linux/filesystem2_spec.rb +++ b/spec/unit/plugins/linux/filesystem_spec.rb @@ -19,7 +19,7 @@ require_relative "../../../spec_helper.rb" describe Ohai::System, "Linux filesystem plugin" do - let (:plugin) { get_plugin("linux/filesystem2") } + let (:plugin) { get_plugin("linux/filesystem") } before(:each) do allow(plugin).to receive(:collect_os).and_return(:linux) @@ -52,9 +52,9 @@ describe Ohai::System, "Linux filesystem plugin" do end end - it "sets both filesystem and filesystem_v2 attributes" do + it "sets both filesystem and filesystem2 attributes" do plugin.run - expect(plugin[:filesystem]).to eq(plugin[:filesystem_v2]) + expect(plugin[:filesystem]).to eq(plugin[:filesystem2]) end describe "when gathering filesystem usage data from df" do @@ -93,42 +93,42 @@ DFi it "should set kb_size to value from df -P" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:kb_size]).to eq("97605057") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:kb_size]).to eq("97605057") end it "should set kb_used to value from df -P" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:kb_used]).to eq("53563253") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:kb_used]).to eq("53563253") end it "should set kb_available to value from df -P" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:kb_available]).to eq("44041805") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:kb_available]).to eq("44041805") end it "should set percent_used to value from df -P" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:percent_used]).to eq("56%") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:percent_used]).to eq("56%") end it "should set mount to value from df -P" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount]).to eq("/special") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount]).to eq("/special") end it "should set total_inodes to value from df -iP" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:total_inodes]).to eq("124865") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:total_inodes]).to eq("124865") end it "should set inodes_used to value from df -iP" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:inodes_used]).to eq("380") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:inodes_used]).to eq("380") end it "should set inodes_available to value from df -iP" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:inodes_available]).to eq("124485") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:inodes_available]).to eq("124485") end end @@ -161,17 +161,17 @@ MOUNT it "should set mount to value from mount" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount]).to eq("/special") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount]).to eq("/special") end it "should set fs_type to value from mount" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:fs_type]).to eq("xfs") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:fs_type]).to eq("xfs") end it "should set mount_options to an array of values from mount" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount_options]).to eq(%w{ro noatime}) + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount_options]).to eq(%w{ro noatime}) end end @@ -227,9 +227,9 @@ BLKID_TYPE it "should set kb_size to value from blkid" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/md1,"][:fs_type]).to eq("LVM2_member") - expect(plugin[:filesystem2]["by_pair"]["/dev/sda2,"][:uuid]).to eq("e36d933e-e5b9-cfe5-6845-1f84d0f7fbfa") - expect(plugin[:filesystem2]["by_pair"]["/dev/md0,/boot"][:label]).to eq("/boot") + expect(plugin[:filesystem]["by_pair"]["/dev/md1,"][:fs_type]).to eq("LVM2_member") + expect(plugin[:filesystem]["by_pair"]["/dev/sda2,"][:uuid]).to eq("e36d933e-e5b9-cfe5-6845-1f84d0f7fbfa") + expect(plugin[:filesystem]["by_pair"]["/dev/md0,/boot"][:label]).to eq("/boot") end end @@ -287,14 +287,14 @@ BLKID_TYPE it "should set kb_size to value from lsblk -n -P -o NAME,UUID,LABEL,FSTYPE" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/md1,"][:fs_type]).to eq("LVM2_member") - expect(plugin[:filesystem2]["by_pair"]["/dev/sda2,"][:uuid]).to eq("e36d933e-e5b9-cfe5-6845-1f84d0f7fbfa") - expect(plugin[:filesystem2]["by_pair"]["/dev/md0,/boot"][:label]).to eq("/boot") + expect(plugin[:filesystem]["by_pair"]["/dev/md1,"][:fs_type]).to eq("LVM2_member") + expect(plugin[:filesystem]["by_pair"]["/dev/sda2,"][:uuid]).to eq("e36d933e-e5b9-cfe5-6845-1f84d0f7fbfa") + expect(plugin[:filesystem]["by_pair"]["/dev/md0,/boot"][:label]).to eq("/boot") end it "should ignore extra info in name and set label to value from lsblk -n -P -o NAME,UUID,LABEL,FSTYPE" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/debian--7-root,"][:label]).to eq("root") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/debian--7-root,"][:label]).to eq("root") end end @@ -333,17 +333,17 @@ MOUNTS it "should set mount to value from /proc/mounts" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount]).to eq("/special") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount]).to eq("/special") end it "should set fs_type to value from /proc/mounts" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:fs_type]).to eq("xfs") + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:fs_type]).to eq("xfs") end it "should set mount_options to an array of values from /proc/mounts" do plugin.run - expect(plugin[:filesystem2]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount_options]).to eq(%w{ro noatime attr2 noquota}) + expect(plugin[:filesystem]["by_pair"]["/dev/mapper/sys.vg-special.lv,/special"][:mount_options]).to eq(%w{ro noatime attr2 noquota}) end end @@ -390,9 +390,9 @@ BLKID_TYPE it "should provide a devices view with all mountpoints" do plugin.run - expect(plugin[:filesystem2]["by_device"]["/dev/mapper/sys.vg-root.lv"][:mounts]).to eq(["/", "/var/chroot"]) - expect(plugin[:filesystem2]["by_device"]["/dev/mapper/sys.vg-home.lv"][:mounts]).to eq(["/home", "/home2"]) - expect(plugin[:filesystem2]["by_device"]["tmpfs"][:mounts]).to eq(["/lib/init/rw", "/dev/shm"]) + expect(plugin[:filesystem]["by_device"]["/dev/mapper/sys.vg-root.lv"][:mounts]).to eq(["/", "/var/chroot"]) + expect(plugin[:filesystem]["by_device"]["/dev/mapper/sys.vg-home.lv"][:mounts]).to eq(["/home", "/home2"]) + expect(plugin[:filesystem]["by_device"]["tmpfs"][:mounts]).to eq(["/lib/init/rw", "/dev/shm"]) end end @@ -436,7 +436,7 @@ BLKID_TYPE it "should provide a mounts view with all devices" do plugin.run - expect(plugin[:filesystem2]["by_mountpoint"]["/mnt"][:devices]).to eq(["/dev/sdb1", "/dev/sdc1"]) + expect(plugin[:filesystem]["by_mountpoint"]["/mnt"][:devices]).to eq(["/dev/sdb1", "/dev/sdc1"]) end end end |