File: cloudkitty_fetcher_gnocchi_spec.rb

package info (click to toggle)
puppet-module-cloudkitty 14.0.0-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,056 kB
  • sloc: ruby: 2,270; python: 38; sh: 10; makefile: 10
file content (63 lines) | stat: -rw-r--r-- 2,653 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
require 'spec_helper'

describe 'cloudkitty::fetcher::gnocchi' do

  let :params do
    { :scope_attribute   => '<SERVICE DEFAULT>',
      :resource_types    => '<SERVICE DEFAULT>',
      :gnocchi_auth_type => '<SERVICE DEFAULT>',
      :gnocchi_user      => '<SERVICE DEFAULT>',
      :gnocchi_endpoint  => '<SERVICE DEFAULT>',
      :interface         => '<SERVICE DEFAULT>',
      :region_name       => '<SERVICE DEFAULT>',
      :auth_type         => '<SERVICE DEFAULT>',
      :auth_section      => '<SERVICE DEFAULT>',
    }
  end


  shared_examples_for 'cloudkitty::fetcher::gnocchi' do
    it { should contain_class('cloudkitty::deps') }

    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/scope_attribute').with_value( params[:scope_attribute])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/resource_types').with_value( params[:resource_types])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/gnocchi_auth_type').with_value( params[:gnocchi_auth_type])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/gnocchi_user').with_value( params[:gnocchi_user])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/gnocchi_endpoint').with_value( params[:gnocchi_endpoint])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/interface').with_value( params[:interface])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/region_name').with_value( params[:region_name])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/auth_type').with_value( params[:auth_type])}
    it { is_expected.to contain_cloudkitty_config('fetcher_gnocchi/auth_section').with_value( params[:auth_section])}
  end

  on_supported_os({
    :supported_os => OSDefaults.get_supported_os
  }).each do |os,facts|
    context "on #{os}" do
      let (:facts) do
        facts.merge!(OSDefaults.get_facts())
      end

      context 'with default parameters' do
        it_behaves_like 'cloudkitty::fetcher::gnocchi'
      end

      context 'when overriding parameters' do
        before do
          params.merge!({
            :scope_attribute   => 'project_id',
            :resource_types    => 'some_types',
            :gnocchi_auth_type => 'basic',
            :gnocchi_user      => 'myuser',
            :gnocchi_endpoint  => 'https://somwhere/',
            :interface         => 'external',
            :region_name       => 'myregion',
            :auth_type         => 'typeA',
            :auth_section      => 'ks_auth',
          })
        end
        it_behaves_like 'cloudkitty::fetcher::gnocchi'
      end
    end
  end
end