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 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
|
# frozen_string_literal: true
require_relative '../../../helpers/unit/provider/elasticsearch_rest_shared_examples'
describe Puppet::Type.type(:elasticsearch_component_template).provider(:ruby) do # rubocop:disable RSpec/MultipleMemoizedHelpers
let(:example1) do
{
name: 'foobar1',
ensure: :present,
provider: :ruby,
content: {
'template' => {
'mappings' => {
'properties' => {
'dummy1' => {
'type' => 'keyword'
}
}
}
}
}
}
end
let(:json1) do
{
'component_templates' => [
{
'name' => 'foobar1',
'component_template' => {
'template' => {
'mappings' => {
'properties' => {
'dummy1' => {
'type' => 'keyword'
}
}
}
}
}
}
]
}
end
let(:example2) do
{
name: 'foobar2',
ensure: :present,
provider: :ruby,
content: {
'template' => {
'mappings' => {
'properties' => {
'dummy2' => {
'type' => 'keyword'
}
}
}
}
}
}
end
let(:json2) do
{
'component_templates' => [
{
'name' => 'foobar2',
'component_template' => {
'template' => {
'mappings' => {
'properties' => {
'dummy2' => {
'type' => 'keyword'
}
}
}
}
}
}
]
}
end
let(:bare_resource) do
JSON.dump(
{}
)
end
let(:resource) { Puppet::Type::Elasticsearch_component_template.new props }
let(:provider) { described_class.new resource }
let(:props) do
{
name: 'foo',
content: {}
}
end
include_examples 'REST API', 'component_template', '_component_template/foo'
end
|