]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/neutron/spec/unit/provider/neutron_network/neutron_spec.rb
try again, with puppetforge modules, correctly included now
[dsa-puppet.git] / 3rdparty / modules / neutron / spec / unit / provider / neutron_network / neutron_spec.rb
1 require 'puppet'
2 require 'spec_helper'
3 require 'puppet/provider/neutron_network/neutron'
4
5 provider_class = Puppet::Type.type(:neutron_network).provider(:neutron)
6
7 describe provider_class do
8
9   let :net_name do
10     'net1'
11   end
12
13   let :net_attrs do
14     {
15       :name            => net_name,
16       :ensure          => 'present',
17       :admin_state_up  => 'True',
18       :router_external => 'False',
19       :shared          => 'False',
20       :tenant_id       => '',
21     }
22   end
23
24   describe 'when updating a network' do
25     let :resource do
26       Puppet::Type::Neutron_network.new(net_attrs)
27     end
28
29     let :provider do
30       provider_class.new(resource)
31     end
32
33     it 'should call net-update to change admin_state_up' do
34       provider.expects(:auth_neutron).with('net-update',
35                                            '--admin_state_up=False',
36                                            net_name)
37       provider.admin_state_up=('False')
38     end
39
40     it 'should call net-update to change shared' do
41       provider.expects(:auth_neutron).with('net-update',
42                                            '--shared=True',
43                                            net_name)
44       provider.shared=('True')
45     end
46
47     it 'should call net-update to change router_external' do
48       provider.expects(:auth_neutron).with('net-update',
49                                            '--router:external=False',
50                                            net_name)
51       provider.router_external=('False')
52     end
53
54     it 'should call net-update to change router_external' do
55       provider.expects(:auth_neutron).with('net-update',
56                                            '--router:external',
57                                            net_name)
58       provider.router_external=('True')
59     end
60
61     [:provider_network_type, :provider_physical_network, :provider_segmentation_id].each do |attr|
62       it "should fail when #{attr.to_s} is update " do
63         expect do
64           provider.send("#{attr}=", 'foo')
65         end.to raise_error(Puppet::Error, /does not support being updated/)
66       end
67     end
68
69   end
70
71 end