spec/fstab_spec.rb in linux_admin-0.2.1 vs spec/fstab_spec.rb in linux_admin-0.2.2

- old
+ new

@@ -1,11 +1,29 @@ require 'spec_helper' require 'stringio' describe LinuxAdmin::FSTab do + before do + # Reset the singleton so subsequent tests get a new instance + Singleton.send :__init__, LinuxAdmin::FSTab + end + + it "newline, single spaces, tab" do + fstab = <<eos + + + +eos + File.should_receive(:read).with('/etc/fstab').and_return(fstab) + LinuxAdmin::FSTab.instance.entries.size.should == 0 + end + it "creates FSTabEntry for each line in fstab" do fstab = <<eos +# Comment, indented comment, comment with device information + # /dev/sda1 / ext4 defaults 1 1 +# /dev/sda1 / ext4 defaults 1 1 /dev/sda1 / ext4 defaults 1 1 /dev/sda2 swap swap defaults 0 0 eos File.should_receive(:read).with('/etc/fstab').and_return(fstab) entries = LinuxAdmin::FSTab.instance.entries @@ -34,9 +52,10 @@ entry.mount_point = '/' entry.fs_type = 'ext4' entry.mount_options = 'defaults' entry.dumpable = 1 entry.fsck_order = 1 + LinuxAdmin::FSTab.any_instance.stub(:refresh) # don't read /etc/fstab LinuxAdmin::FSTab.instance.entries = [entry] File.should_receive(:write).with('/etc/fstab', "/dev/sda1 / ext4 defaults 1 1\n") LinuxAdmin::FSTab.instance.write! end