]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - 3rdparty/modules/neutron/spec/classes/neutron_plugins_cisco_ml2_spec.rb
try again, with puppetforge modules, correctly included now
[dsa-puppet.git] / 3rdparty / modules / neutron / spec / classes / neutron_plugins_cisco_ml2_spec.rb
diff --git a/3rdparty/modules/neutron/spec/classes/neutron_plugins_cisco_ml2_spec.rb b/3rdparty/modules/neutron/spec/classes/neutron_plugins_cisco_ml2_spec.rb
new file mode 100644 (file)
index 0000000..7fd3d4a
--- /dev/null
@@ -0,0 +1,62 @@
+#
+# Unit tests for neutron::plugins::ml2 class
+#
+
+require 'spec_helper'
+
+describe 'neutron::plugins::ml2::cisco::nexus' do
+
+  let :pre_condition do
+    "class { 'neutron::server': auth_password => 'password'}
+     class { 'neutron':
+      rabbit_password => 'passw0rd',
+      core_plugin     => 'neutron.plugins.ml2.plugin.Ml2Plugin' }"
+  end
+
+  let :default_params do
+    {
+      :nexus_config          => nil
+    }
+  end
+
+  let :params do
+    {}
+  end
+
+  let :facts do
+    { :osfamily => 'Debian' }
+  end
+
+  context 'fail when missing nexus_config' do
+    it 'should fails to configure cisco nexus driver' do
+      expect { subject }.to raise_error(Puppet::Error, /No nexus config specified/)
+    end
+  end
+
+  context 'when using cisco' do
+    let (:nexus_config) do
+      { 'cvf2leaff2' => {'username' => 'prad',
+        "ssh_port" => 22,
+        "password" => "password",
+        "ip_address" => "172.18.117.28",
+        "servers" => {
+          "control02" => "portchannel:20",
+          "control01" => "portchannel:10"
+        }
+      }
+    }
+    end
+
+    before :each do
+      params.merge!(:nexus_config => nexus_config )
+    end
+
+    it 'installs ncclient package' do
+      should contain_package('python-ncclient').with(
+        :ensure => 'installed'
+      )
+    end
+
+  end
+
+end