~liff/puppet/ubuntu

« back to all changes in this revision

Viewing changes to spec/unit/provider/nameservice/directoryservice_spec.rb

  • Committer: Olli Helenius
  • Date: 2011-10-03 08:46:09 UTC
  • mfrom: (3866.1.7)
  • Revision ID: olli.helenius@onesto.fi-20111003084609-3chc7lo31gl3u5cf
[Micah Anderson]
* Fix SSH authorized keys symlink attack (CVE-2011-3870)
* Fix K5login content attack (CVE-2011-3869)
* Fix predictable temporary file using RAL (CVE-2011-3871)
* Fix file indirectory injection
[Stig Sandbeck Mathisen]
* Update package conflicts for puppet-el and vim-puppet (Closes: #643657)

* Resist directory traversal attacks (CVE-2011-3848)
* New upstream version

Show diffs side-by-side

added added

removed removed

Lines of Context:
35
35
    end
36
36
  end
37
37
end
 
38
 
 
39
describe 'DirectoryService.single_report' do
 
40
  it 'should fail on OS X < 10.4' do
 
41
    Puppet::Provider::NameService::DirectoryService.stubs(:get_macosx_version_major).returns("10.3")
 
42
 
 
43
    lambda {
 
44
      Puppet::Provider::NameService::DirectoryService.single_report('resource_name')
 
45
    }.should raise_error(RuntimeError, "Puppet does not support OS X versions < 10.4")
 
46
  end
 
47
 
 
48
  it 'should use url data on 10.4' do
 
49
    Puppet::Provider::NameService::DirectoryService.stubs(:get_macosx_version_major).returns("10.4")
 
50
    Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
 
51
    Puppet::Provider::NameService::DirectoryService.stubs(:list_all_present).returns(
 
52
      ['root', 'user1', 'user2', 'resource_name']
 
53
    )
 
54
    Puppet::Provider::NameService::DirectoryService.stubs(:generate_attribute_hash)
 
55
    Puppet::Provider::NameService::DirectoryService.stubs(:execute)
 
56
    Puppet::Provider::NameService::DirectoryService.expects(:parse_dscl_url_data)
 
57
 
 
58
    Puppet::Provider::NameService::DirectoryService.single_report('resource_name')
 
59
  end
 
60
 
 
61
  it 'should use plist data on > 10.4' do
 
62
    Puppet::Provider::NameService::DirectoryService.stubs(:get_macosx_version_major).returns("10.5")
 
63
    Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
 
64
    Puppet::Provider::NameService::DirectoryService.stubs(:list_all_present).returns(
 
65
      ['root', 'user1', 'user2', 'resource_name']
 
66
    )
 
67
    Puppet::Provider::NameService::DirectoryService.stubs(:generate_attribute_hash)
 
68
    Puppet::Provider::NameService::DirectoryService.stubs(:execute)
 
69
    Puppet::Provider::NameService::DirectoryService.expects(:parse_dscl_plist_data)
 
70
 
 
71
    Puppet::Provider::NameService::DirectoryService.single_report('resource_name')
 
72
  end
 
73
end
 
74
 
 
75
describe 'DirectoryService.get_exec_preamble' do
 
76
  it 'should fail on OS X < 10.4' do
 
77
    Puppet::Provider::NameService::DirectoryService.stubs(:get_macosx_version_major).returns("10.3")
 
78
 
 
79
    lambda {
 
80
      Puppet::Provider::NameService::DirectoryService.get_exec_preamble('-list')
 
81
    }.should raise_error(RuntimeError, "Puppet does not support OS X versions < 10.4")
 
82
  end
 
83
 
 
84
  it 'should use url data on 10.4' do
 
85
    Puppet::Provider::NameService::DirectoryService.stubs(:get_macosx_version_major).returns("10.4")
 
86
    Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
 
87
 
 
88
    Puppet::Provider::NameService::DirectoryService.get_exec_preamble('-list').should include("-url")
 
89
  end
 
90
 
 
91
  it 'should use plist data on > 10.4' do
 
92
    Puppet::Provider::NameService::DirectoryService.stubs(:get_macosx_version_major).returns("10.5")
 
93
    Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
 
94
 
 
95
    Puppet::Provider::NameService::DirectoryService.get_exec_preamble('-list').should include("-plist")
 
96
  end
 
97
end