aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMickaël Canévet <mickael.canevet@camptocamp.com>2015-11-04 08:56:14 +0100
committerMickaël Canévet <mickael.canevet@camptocamp.com>2015-11-04 09:57:05 +0100
commit3d06981f4037ca508666a8818e88005d013427a4 (patch)
treec43d03d048497e63f333462653a280f9b9cd7831
parent0330b3744275b6a35be5590eec4bfb36d0c928fd (diff)
downloadpuppet-dhcp-3d06981f4037ca508666a8818e88005d013427a4.tar.gz
puppet-dhcp-3d06981f4037ca508666a8818e88005d013427a4.tar.bz2
Add acceptance tests
-rw-r--r--.sync.yml2
-rw-r--r--.travis.yml30
-rw-r--r--spec/acceptance/dhcp_server_spec.rb20
-rw-r--r--spec/spec_helper_acceptance.rb21
4 files changed, 73 insertions, 0 deletions
diff --git a/.sync.yml b/.sync.yml
index 40cef54..6a3715e 100644
--- a/.sync.yml
+++ b/.sync.yml
@@ -1,3 +1,5 @@
---
.travis.yml:
+ acceptance:
+ - '*'
forge_password: "vAwCsf7dOPitWzwZFk/nKa8vCqkpvBHc/Ik9lgJHpp1f/FY+ywetifCFHtCCiaJnvmLfsolB3m6oh7XmxVfToXNb7Lcr/qwngoFI0AMDOQH3P8WXN5xTuBFWYZTz3ffjllHZGwykVPgd1DgGbStlXFZST8OoCEpRGFGf9nPxNrU="
diff --git a/.travis.yml b/.travis.yml
index ec3a8ee..43ab8d1 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -21,6 +21,36 @@ matrix:
env: PUPPET_GEM_VERSION="~> 3.0" FUTURE_PARSER="yes"
- rvm: 2.1.6
env: PUPPET_GEM_VERSION="~> 4.0"
+ - rvm: default
+ sudo: required
+ services: docker
+ env: BEAKER_set="debian-6-x86_64-docker"
+ bundler_args:
+ script: sudo service docker restart ; sleep 10 && bundle exec rspec spec/acceptance/*_spec.rb
+ - rvm: default
+ sudo: required
+ services: docker
+ env: BEAKER_set="debian-7-x86_64-docker"
+ bundler_args:
+ script: sudo service docker restart ; sleep 10 && bundle exec rspec spec/acceptance/*_spec.rb
+ - rvm: default
+ sudo: required
+ services: docker
+ env: BEAKER_set="debian-8-x86_64-docker"
+ bundler_args:
+ script: sudo service docker restart ; sleep 10 && bundle exec rspec spec/acceptance/*_spec.rb
+ - rvm: default
+ sudo: required
+ services: docker
+ env: BEAKER_set="ubuntu-12.04-x86_64-docker"
+ bundler_args:
+ script: sudo service docker restart ; sleep 10 && bundle exec rspec spec/acceptance/*_spec.rb
+ - rvm: default
+ sudo: required
+ services: docker
+ env: BEAKER_set="ubuntu-14.04-x86_64-docker"
+ bundler_args:
+ script: sudo service docker restart ; sleep 10 && bundle exec rspec spec/acceptance/*_spec.rb
notifications:
email: false
deploy:
diff --git a/spec/acceptance/dhcp_server_spec.rb b/spec/acceptance/dhcp_server_spec.rb
new file mode 100644
index 0000000..ae54c9f
--- /dev/null
+++ b/spec/acceptance/dhcp_server_spec.rb
@@ -0,0 +1,20 @@
+require 'spec_helper_acceptance'
+
+describe 'dhcp::server' do
+ describe 'running puppet code' do
+ it 'should work with no errors' do
+ pp = <<-EOS
+ class { 'dhcp::server': }
+ dhcp::subnet { '172.17.0.0':
+ ensure => present,
+ broadcast => '172.17.0.255',
+ other_opts => ['range 172.17.0.100 172.17.0.250'],
+ }
+ EOS
+
+ # Run it twice and test for idempotency
+ apply_manifest(pp, :catch_failures => true)
+ apply_manifest(pp, :catch_changes => true)
+ end
+ end
+end
diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb
new file mode 100644
index 0000000..3fa72d4
--- /dev/null
+++ b/spec/spec_helper_acceptance.rb
@@ -0,0 +1,21 @@
+require 'beaker-rspec'
+
+install_puppet_agent_on hosts, {}
+
+RSpec.configure do |c|
+ module_root = File.expand_path(File.join(File.dirname(__FILE__), '..'))
+ module_name = module_root.split('-').last
+
+ # Readable test descriptions
+ c.formatter = :documentation
+
+ # Configure all nodes in nodeset
+ c.before :suite do
+ # Install module
+ puppet_module_install(:source => module_root, :module_name => module_name)
+ hosts.each do |host|
+ on host, puppet('module','install','puppetlabs-concat'), { :acceptable_exit_codes => [0,1] }
+ on host, puppet('module','install','puppetlabs-stdlib'), { :acceptable_exit_codes => [0,1] }
+ end
+ end
+end