From 1a8c4b9e6ae14c05e8453de5fbffeb3cdfc5a093 Mon Sep 17 00:00:00 2001 From: Colleen Murphy Date: Tue, 11 Sep 2018 01:29:28 +0200 Subject: [PATCH] Add beaker tests for custom providers Add tests to ensure the mailman_list and maillist providers work as expected. Change-Id: I7b54a364f55bde50390fef5eb017576285e59458 --- spec/acceptance/basic_spec.rb | 4 ++++ spec/acceptance/fixtures/default.pp | 11 +++++++++++ spec/acceptance/fixtures/multihost.pp | 22 ++++++++++++++++++++-- spec/acceptance/multihost_spec.rb | 4 ++++ 4 files changed, 39 insertions(+), 2 deletions(-) diff --git a/spec/acceptance/basic_spec.rb b/spec/acceptance/basic_spec.rb index 6880b98..b27c76e 100644 --- a/spec/acceptance/basic_spec.rb +++ b/spec/acceptance/basic_spec.rb @@ -90,4 +90,8 @@ EOF describe file('/etc/apache2/sites-enabled/50-lists.openstack.org.conf') do its(:content) { should eq expected_vhost } end + + describe command('MAILMAN_SITE_DIR=/srv/mailman/openstack /usr/lib/mailman/bin/list_lists --bare') do + its(:stdout) { should eq "kata-dev\n" } + end end diff --git a/spec/acceptance/fixtures/default.pp b/spec/acceptance/fixtures/default.pp index b55708b..c23696f 100644 --- a/spec/acceptance/fixtures/default.pp +++ b/spec/acceptance/fixtures/default.pp @@ -4,3 +4,14 @@ file { '/srv/mailman': class { 'mailman': vhost_name => 'lists.openstack.org', } +Maillist { + provider => 'noaliasmailman', +} +maillist { 'kata-dev': + ensure => present, + admin => 'jonathan@openstack.org', + password => 'listpassword', + description => 'Kata Containers Development Mailing List (not for usage questions)', + webserver => $listdomain, + mailserver => $listdomain, +} diff --git a/spec/acceptance/fixtures/multihost.pp b/spec/acceptance/fixtures/multihost.pp index 9214a1c..5ad6fbe 100644 --- a/spec/acceptance/fixtures/multihost.pp +++ b/spec/acceptance/fixtures/multihost.pp @@ -1,5 +1,16 @@ -file { '/srv/mailman': - ensure => directory, +vcsrepo { '/opt/system-config': + ensure => present, + source => 'git://git.openstack.org/openstack-infra/system-config', + provider => git, +} +file { '/srv/mailman/openstack/templates/en': + ensure => directory, + owner => 'root', + group => 'list', + mode => '0644', + recurse => true, + require => File['/srv/mailman/openstack/templates'], + source => '/opt/system-config/modules/openstack_project/files/mailman/html-templates-en', } class { 'mailman': multihost => true, @@ -10,3 +21,10 @@ mailman::site { 'openstack': install_languages => ['de', 'fr', 'it', 'ko', 'ru', 'vi', 'zh_TW'], require => Class['mailman'], } +mailman_list { 'mailman@openstack': + require => Mailman::Site['openstack'], + ensure => present, + admin => 'nobody@openstack.org', + password => 'listpassword', + description => 'The mailman site list', +} diff --git a/spec/acceptance/multihost_spec.rb b/spec/acceptance/multihost_spec.rb index b507981..a829a5f 100644 --- a/spec/acceptance/multihost_spec.rb +++ b/spec/acceptance/multihost_spec.rb @@ -92,4 +92,8 @@ EOF describe file('/etc/apache2/sites-enabled/50-lists.openstack.org.conf') do its(:content) { should eq expected_vhost } end + + describe command('MAILMAN_SITE_DIR=/srv/mailman/openstack /usr/lib/mailman/bin/list_lists --bare') do + its(:stdout) { should eq "mailman\n" } + end end