Skip to content

Commit

Permalink
Merge pull request #627 from bastelfreak/tests
Browse files Browse the repository at this point in the history
Implement acceptance tests for webhook-go
  • Loading branch information
bastelfreak authored Sep 18, 2023
2 parents 36be672 + b8dc600 commit d3e0850
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 4 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ concurrency:
jobs:
puppet:
name: Puppet
uses: voxpupuli/gha-puppet/.github/workflows/basic.yml@v1
uses: voxpupuli/gha-puppet/.github/workflows/beaker.yml@v1
38 changes: 38 additions & 0 deletions spec/acceptance/r10k_webhook_spec.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# frozen_string_literal: true

require 'spec_helper_acceptance'

describe 'r10k::webhook tests', if: fact('os.name') != 'Archlinux' do
context 'when defaults used' do
it_behaves_like 'an idempotent resource' do
let(:manifest) do
<<-PUPPET
class { 'r10k': }
-> class { 'r10k::webhook': }
PUPPET
end
end

describe package('webhook-go') do
it { is_expected.to be_installed }
end

describe file('/etc/voxpupuli/webhook.yml') do
it 'exists and has content' do
expect(subject).to exist
expect(subject).to be_owned_by 'root'
expect(subject).to be_grouped_into 'root'
expect(subject).to contain "---\nserver:\n protected: true\n user: puppet\n password: puppet\n"
end
end

describe service('webhook-go') do
it { is_expected.to be_enabled }
it { is_expected.to be_running }
end

describe command('systemctl cat webhook-go') do
its(:stdout) { is_expected.to match(%r{webhook-go}) }
end
end
end
9 changes: 6 additions & 3 deletions spec/spec_helper_acceptance.rb
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
# frozen_string_literal: true

# Managed by modulesync - DO NOT EDIT
# https://voxpupuli.org/docs/updating-files-managed-with-modulesync/

require 'voxpupuli/acceptance/spec_helper_acceptance'

configure_beaker do |host|
on host, puppet('resource', 'user', 'puppet', 'ensure=present')
end
configure_beaker(modules: :metadata)

Dir['./spec/support/acceptance/**/*.rb'].sort.each { |f| require f }

0 comments on commit d3e0850

Please sign in to comment.