~nvalcarcel/ubuntu/lucid/puppet/fix-546677

« back to all changes in this revision

Viewing changes to spec/unit/type/computer.rb

  • Committer: Bazaar Package Importer
  • Author(s): Chuck Short
  • Date: 2009-12-23 00:48:10 UTC
  • mfrom: (1.1.10 upstream) (3.1.7 squeeze)
  • Revision ID: james.westby@ubuntu.com-20091223004810-3i4oryds922g5n59
Tags: 0.25.1-3ubuntu1
* Merge from debian testing.  Remaining changes:
  - debian/rules:
    + Don't start puppet when first installing puppet.
  - debian/puppet.conf, lib/puppet/defaults.rb:
    + Move templates to /etc/puppet
  - lib/puppet/defaults.rb:
    + Fix /var/lib/puppet/state ownership.
  - man/man8/puppet.conf.8: 
    + Fix broken URL in manpage.
  - debian/control:
    + Update maintainer accordint to spec.
    + Puppetmaster Recommends -> Suggests
    + Created puppet-testsuite as a seperate. Allow the users to run puppet's 
      testsuite.
  - tests/Rakefile: Fix rakefile so that the testsuite can acutally be ran.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#!/usr/bin/env ruby
2
 
 
 
2
 
3
3
require File.dirname(__FILE__) + '/../../spec_helper'
4
4
 
5
5
computer = Puppet::Type.type(:computer)
6
6
 
7
 
describe Puppet.type(:computer), " when checking computer objects" do
 
7
describe Puppet::Type.type(:computer), " when checking computer objects" do
8
8
    before do
9
9
        provider_class = Puppet::Type::Computer.provider(Puppet::Type::Computer.providers[0])
10
10
        Puppet::Type::Computer.expects(:defaultprovider).returns provider_class
11
 
        @resource = Puppet::Type::Computer.create(
 
11
        @resource = Puppet::Type::Computer.new(
12
12
                        :name => "puppetcomputertest",
13
13
                        :en_address => "aa:bb:cc:dd:ee:ff",
14
14
                        :ip_address => "1.2.3.4")
15
15
        @properties = {}
16
16
        @ensure = Puppet::Type::Computer.attrclass(:ensure).new(:resource => @resource)
17
17
    end
18
 
  
19
 
    after do
20
 
        computer.clear
21
 
    end
22
 
    
 
18
 
23
19
    it "should be able to create a instance" do
24
20
        provider_class = Puppet::Type::Computer.provider(Puppet::Type::Computer.providers[0])
25
21
        Puppet::Type::Computer.expects(:defaultprovider).returns provider_class
26
 
        computer.create(:name => "bar").should_not be_nil
 
22
        computer.new(:name => "bar").should_not be_nil
27
23
    end
28
 
  
 
24
 
29
25
    properties = [:en_address, :ip_address]
30
26
    params = [:name]
31
 
  
 
27
 
32
28
    properties.each do |property|
33
29
        it "should have a %s property" % property do
34
30
            computer.attrclass(property).ancestors.should be_include(Puppet::Property)
37
33
        it "should have documentation for its %s property" % property do
38
34
            computer.attrclass(property).doc.should be_instance_of(String)
39
35
        end
40
 
        
 
36
 
41
37
        it "should accept :absent as a value" do
42
38
            prop = computer.attrclass(property).new(:resource => @resource)
43
39
            prop.should = :absent
44
40
            prop.should.must == :absent
45
41
        end
46
42
    end
47
 
    
 
43
 
48
44
    params.each do |param|
49
45
        it "should have a %s parameter" % param do
50
46
            computer.attrclass(param).ancestors.should be_include(Puppet::Parameter)
54
50
            computer.attrclass(param).doc.should be_instance_of(String)
55
51
        end
56
52
    end
57
 
    
 
53
 
58
54
    describe "default values" do
59
55
        before do
60
56
            provider_class = computer.provider(computer.providers[0])
62
58
        end
63
59
 
64
60
        it "should be nil for en_address" do
65
 
            computer.create(:name => :en_address)[:en_address].should == nil
 
61
            computer.new(:name => :en_address)[:en_address].should == nil
66
62
        end
67
 
        
 
63
 
68
64
        it "should be nil for ip_address" do
69
 
            computer.create(:name => :ip_address)[:ip_address].should == nil
 
65
            computer.new(:name => :ip_address)[:ip_address].should == nil
70
66
        end
71
67
    end
72
 
        
73
 
    describe "when managing the ensure property" do    
 
68
 
 
69
    describe "when managing the ensure property" do
74
70
        it "should support a :present value" do
75
71
            lambda { @ensure.should = :present }.should_not raise_error
76
72
        end
77
 
    
 
73
 
78
74
        it "should support an :absent value" do
79
75
            lambda { @ensure.should = :absent }.should_not raise_error
80
76
        end
81
77
    end
82
 
end
 
 
b'\\ No newline at end of file'
 
78
end