diff options
Diffstat (limited to 'spec/unit/puppet/provider/whole_line/ruby_spec.rb')
-rw-r--r-- | spec/unit/puppet/provider/whole_line/ruby_spec.rb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/spec/unit/puppet/provider/whole_line/ruby_spec.rb b/spec/unit/puppet/provider/whole_line/ruby_spec.rb new file mode 100644 index 0000000..9faff2c --- /dev/null +++ b/spec/unit/puppet/provider/whole_line/ruby_spec.rb @@ -0,0 +1,30 @@ +require 'puppet' +require 'tempfile' +provider_class = Puppet::Type.type(:whole_line).provider(:ruby) +describe provider_class do + before :each do + tmp = Tempfile.new('tmp') + @tmpfile = tmp.path + tmp.close! + @resource = Puppet::Type::Whole_line.new( + {:name => 'foo', :path => @tmpfile, :line => 'foo'} + ) + @provider = provider_class.new(@resource) + end + it 'should detect if the line exists in the file' do + File.open(@tmpfile, 'w') do |fh| + fh.write('foo') + end + @provider.exists?.should be_true + end + it 'should detect if the line does not exist in the file' do + File.open(@tmpfile, 'w') do |fh| + fh.write('foo1') + end + @provider.exists?.should be_nil + end + it 'should append to an existing file when creating' do + @provider.create + File.read(@tmpfile).chomp.should == 'foo' + end +end |