Sha256: 8bbf0c77b364001a079f3c4a56a8219edc7888f380b5d12bf57abe996321a885

Contents?: true

Size: 1.68 KB

Versions: 234

Compression:

Stored size: 1.68 KB

Contents

#! /usr/bin/env ruby
require 'spec_helper'

describe Puppet::Type.type(:mailalias) do
  include PuppetSpec::Files

  let :tmpfile_path do tmpfile('afile') end
  let :target do tmpfile('mailalias') end
  let :recipient_resource do
    described_class.new(:name => "luke", :recipient => "yay", :target => target)
  end

  let :file_resource do
    described_class.new(:name => "lukefile", :file => tmpfile_path, :target => target)
  end

  it "should be initially absent as a recipient" do
    expect(recipient_resource.retrieve_resource[:recipient]).to eq(:absent)
  end

  it "should be initially absent as an included file" do
    expect(file_resource.retrieve_resource[:file]).to eq(:absent)
  end

  it "should try and set the recipient when it does the sync" do
    expect(recipient_resource.retrieve_resource[:recipient]).to eq(:absent)
    recipient_resource.property(:recipient).expects(:set).with(["yay"])
    recipient_resource.property(:recipient).sync
  end

  it "should try and set the included file when it does the sync" do
    expect(file_resource.retrieve_resource[:file]).to eq(:absent)
    file_resource.property(:file).expects(:set).with(tmpfile_path)
    file_resource.property(:file).sync
  end

  it "should fail when file is not an absolute path" do
    expect {
      Puppet::Type.type(:mailalias).new(:name => 'x', :file => 'afile')
    }.to raise_error Puppet::Error, /File paths must be fully qualified/
  end

  it "should fail when both file and recipient are specified" do
    expect {
      Puppet::Type.type(:mailalias).new(:name => 'x', :file => tmpfile_path,
					:recipient => 'foo@example.com')
    }.to raise_error Puppet::Error, /cannot specify both a recipient and a file/
  end
end

Version data entries

234 entries across 234 versions & 1 rubygems

Version Path
puppet-5.5.12 spec/unit/type/mailalias_spec.rb
puppet-5.5.12-x86-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.12-x64-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.12-universal-darwin spec/unit/type/mailalias_spec.rb
puppet-5.5.10 spec/unit/type/mailalias_spec.rb
puppet-5.5.10-x86-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.10-x64-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.10-universal-darwin spec/unit/type/mailalias_spec.rb
puppet-5.5.8 spec/unit/type/mailalias_spec.rb
puppet-5.5.8-x86-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.8-x64-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.8-universal-darwin spec/unit/type/mailalias_spec.rb
puppet-5.5.7 spec/unit/type/mailalias_spec.rb
puppet-5.5.7-x86-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.7-x64-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.7-universal-darwin spec/unit/type/mailalias_spec.rb
puppet-5.5.6 spec/unit/type/mailalias_spec.rb
puppet-5.5.6-x86-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.6-x64-mingw32 spec/unit/type/mailalias_spec.rb
puppet-5.5.6-universal-darwin spec/unit/type/mailalias_spec.rb