puppet 6.0.10 → 6.1.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Gemfile +1 -0
- data/Gemfile.lock +31 -27
- data/Guardfile.example +76 -0
- data/LICENSE +189 -4
- data/MAINTAINERS +47 -0
- data/README.md +3 -3
- data/lib/hiera/scope.rb +0 -7
- data/lib/puppet.rb +6 -5
- data/lib/puppet/application.rb +3 -3
- data/lib/puppet/application/cert.rb +2 -2
- data/lib/puppet/application/device.rb +83 -109
- data/lib/puppet/application/filebucket.rb +1 -10
- data/lib/puppet/application/ssl.rb +0 -2
- data/lib/puppet/configurer.rb +9 -10
- data/lib/puppet/confine/false.rb +1 -7
- data/lib/puppet/confine/true.rb +1 -7
- data/lib/puppet/defaults.rb +39 -51
- data/lib/puppet/forge.rb +1 -4
- data/lib/puppet/functions/abs.rb +1 -1
- data/lib/puppet/functions/call.rb +1 -2
- data/lib/puppet/functions/new.rb +1 -1
- data/lib/puppet/indirector/request.rb +15 -26
- data/lib/puppet/network/http/connection.rb +12 -32
- data/lib/puppet/network/http/factory.rb +0 -5
- data/lib/puppet/pal/catalog_compiler.rb +96 -0
- data/lib/puppet/pal/compiler.rb +221 -0
- data/lib/puppet/pal/function_signature.rb +52 -0
- data/lib/puppet/pal/json_catalog_encoder.rb +67 -0
- data/lib/puppet/pal/pal_api.rb +15 -0
- data/lib/puppet/pal/pal_impl.rb +523 -0
- data/lib/puppet/pal/plan_signature.rb +71 -0
- data/lib/puppet/pal/script_compiler.rb +71 -0
- data/lib/puppet/pal/task_signature.rb +58 -0
- data/lib/puppet/parser/functions/generate.rb +7 -6
- data/lib/puppet/plugins/configuration.rb +5 -1
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +5 -1
- data/lib/puppet/pops/evaluator/external_syntax_support.rb +3 -3
- data/lib/puppet/pops/issues.rb +0 -4
- data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +4 -60
- data/lib/puppet/pops/model/factory.rb +4 -38
- data/lib/puppet/pops/model/pn_transformer.rb +0 -5
- data/lib/puppet/pops/parser/egrammar.ra +2 -2
- data/lib/puppet/pops/parser/heredoc_support.rb +7 -17
- data/lib/puppet/pops/parser/lexer2.rb +1 -6
- data/lib/puppet/pops/parser/locator.rb +86 -106
- data/lib/puppet/pops/parser/parser_support.rb +2 -11
- data/lib/puppet/pops/types/string_converter.rb +7 -2
- data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
- data/lib/puppet/pops/types/types.rb +3 -5
- data/lib/puppet/pops/validation/checker4_0.rb +13 -0
- data/lib/puppet/provider.rb +2 -1
- data/lib/puppet/provider/exec.rb +6 -1
- data/lib/puppet/provider/file/windows.rb +1 -49
- data/lib/puppet/provider/group/windows_adsi.rb +1 -4
- data/lib/puppet/provider/package.rb +0 -2
- data/lib/puppet/provider/package/dpkg.rb +2 -15
- data/lib/puppet/provider/package/gem.rb +42 -102
- data/lib/puppet/provider/package/pip.rb +111 -135
- data/lib/puppet/provider/package/pip3.rb +1 -1
- data/lib/puppet/provider/package/pkgng.rb +37 -21
- data/lib/puppet/provider/package/puppet_gem.rb +1 -1
- data/lib/puppet/provider/package/rpm.rb +16 -27
- data/lib/puppet/provider/package/windows.rb +1 -5
- data/lib/puppet/provider/package/yum.rb +1 -2
- data/lib/puppet/provider/service/systemd.rb +17 -0
- data/lib/puppet/provider/service/upstart.rb +5 -17
- data/lib/puppet/provider/service/windows.rb +8 -3
- data/lib/puppet/provider/user/directoryservice.rb +4 -16
- data/lib/puppet/provider/user/useradd.rb +13 -16
- data/lib/puppet/resource.rb +3 -1
- data/lib/puppet/rest/client.rb +83 -0
- data/lib/puppet/rest/route.rb +1 -1
- data/lib/puppet/settings.rb +5 -10
- data/lib/puppet/settings/server_list_setting.rb +0 -9
- data/lib/puppet/ssl/host.rb +11 -0
- data/lib/puppet/ssl/validator/default_validator.rb +0 -31
- data/lib/puppet/syntax_checkers/epp.rb +34 -0
- data/lib/puppet/syntax_checkers/pp.rb +34 -0
- data/lib/puppet/transaction.rb +7 -12
- data/lib/puppet/transaction/event_manager.rb +5 -1
- data/lib/puppet/transaction/resource_harness.rb +0 -1
- data/lib/puppet/type.rb +6 -0
- data/lib/puppet/type/exec.rb +5 -27
- data/lib/puppet/type/file/mode.rb +1 -6
- data/lib/puppet/type/file/source.rb +1 -0
- data/lib/puppet/type/filebucket.rb +8 -12
- data/lib/puppet/type/package.rb +11 -44
- data/lib/puppet/type/schedule.rb +0 -4
- data/lib/puppet/type/service.rb +12 -0
- data/lib/puppet/type/user.rb +1 -1
- data/lib/puppet/util/command_line.rb +1 -5
- data/lib/puppet/util/connection.rb +6 -15
- data/lib/puppet/util/http_proxy.rb +2 -3
- data/lib/puppet/util/log.rb +2 -7
- data/lib/puppet/util/pidlock.rb +1 -15
- data/lib/puppet/util/windows/process.rb +5 -73
- data/lib/puppet/util/windows/registry.rb +1 -7
- data/lib/puppet/util/windows/security.rb +8 -29
- data/lib/puppet/util/windows/service.rb +33 -27
- data/lib/puppet/util/windows/user.rb +4 -14
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet_pal.rb +5 -1132
- data/locales/ja/puppet.po +297 -363
- data/locales/puppet.pot +445 -517
- data/man/man5/puppet.conf.5 +12 -20
- data/man/man8/puppet-agent.8 +1 -1
- data/man/man8/puppet-apply.8 +1 -1
- data/man/man8/puppet-catalog.8 +1 -1
- data/man/man8/puppet-config.8 +1 -1
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +1 -1
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +1 -1
- data/man/man8/puppet-filebucket.8 +2 -6
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-key.8 +1 -1
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-man.8 +1 -1
- data/man/man8/puppet-module.8 +1 -1
- data/man/man8/puppet-node.8 +1 -1
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +1 -1
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +1 -1
- data/man/man8/puppet-ssl.8 +1 -1
- data/man/man8/puppet-status.8 +1 -1
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/unit/provider/package/pkgng/pkg.query +7 -1
- data/spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh +1 -0
- data/spec/integration/agent/logging_spec.rb +7 -5
- data/spec/integration/application/apply_spec.rb +16 -18
- data/spec/integration/application/doc_spec.rb +2 -1
- data/spec/integration/application/lookup_spec.rb +5 -5
- data/spec/integration/configurer_spec.rb +6 -5
- data/spec/integration/defaults_spec.rb +6 -5
- data/spec/integration/directory_environments_spec.rb +1 -1
- data/spec/integration/faces/config_spec.rb +4 -3
- data/spec/integration/faces/documentation_spec.rb +1 -0
- data/spec/integration/faces/plugin_spec.rb +1 -1
- data/spec/integration/file_bucket/file_spec.rb +4 -2
- data/spec/integration/file_serving/content_spec.rb +1 -0
- data/spec/integration/file_serving/fileset_spec.rb +1 -0
- data/spec/integration/file_serving/metadata_spec.rb +1 -0
- data/spec/integration/file_serving/terminus_helper_spec.rb +1 -0
- data/spec/integration/indirector/catalog/compiler_spec.rb +11 -10
- data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
- data/spec/integration/indirector/facts/facter_spec.rb +5 -4
- data/spec/integration/indirector/file_content/file_server_spec.rb +8 -7
- data/spec/integration/indirector/file_metadata/file_server_spec.rb +8 -7
- data/spec/integration/network/authconfig_spec.rb +24 -23
- data/spec/integration/network/formats_spec.rb +1 -0
- data/spec/integration/node/environment_spec.rb +1 -0
- data/spec/integration/node/facts_spec.rb +10 -9
- data/spec/integration/node_spec.rb +7 -6
- data/spec/integration/parser/catalog_spec.rb +5 -1
- data/spec/integration/parser/collection_spec.rb +2 -1
- data/spec/integration/parser/compiler_spec.rb +6 -6
- data/spec/integration/parser/scope_spec.rb +1 -1
- data/spec/integration/parser/undef_param_spec.rb +1 -1
- data/spec/integration/provider/service/init_spec.rb +5 -4
- data/spec/integration/provider/service/systemd_spec.rb +2 -0
- data/spec/integration/provider/service/windows_spec.rb +2 -1
- data/spec/integration/reference/providers_spec.rb +2 -1
- data/spec/integration/reports_spec.rb +2 -1
- data/spec/integration/resource/catalog_spec.rb +17 -14
- data/spec/integration/resource/type_collection_spec.rb +5 -4
- data/spec/integration/ssl/certificate_request_spec.rb +1 -0
- data/spec/integration/ssl/host_spec.rb +2 -1
- data/spec/integration/ssl/key_spec.rb +1 -0
- data/spec/integration/test/test_helper_spec.rb +1 -0
- data/spec/integration/transaction/report_spec.rb +11 -6
- data/spec/integration/transaction_spec.rb +19 -18
- data/spec/integration/type/exec_spec.rb +1 -0
- data/spec/integration/type/file_spec.rb +33 -13
- data/spec/integration/type/package_spec.rb +24 -20
- data/spec/integration/type/tidy_spec.rb +2 -1
- data/spec/integration/type_spec.rb +1 -0
- data/spec/integration/util/autoload_spec.rb +2 -1
- data/spec/integration/util/rdoc/parser_spec.rb +1 -0
- data/spec/integration/util/settings_spec.rb +1 -0
- data/spec/integration/util/windows/adsi_spec.rb +5 -3
- data/spec/integration/util/windows/principal_spec.rb +1 -0
- data/spec/integration/util/windows/process_spec.rb +6 -4
- data/spec/integration/util/windows/registry_spec.rb +51 -93
- data/spec/integration/util/windows/security_spec.rb +4 -2
- data/spec/integration/util/windows/user_spec.rb +20 -37
- data/spec/integration/util_spec.rb +7 -4
- data/spec/lib/puppet_spec/compiler.rb +1 -1
- data/spec/lib/puppet_spec/files.rb +1 -0
- data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
- data/spec/lib/puppet_spec/scope.rb +2 -1
- data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
- data/spec/shared_behaviours/file_server_terminus.rb +9 -8
- data/spec/shared_behaviours/file_serving.rb +8 -6
- data/spec/shared_behaviours/file_serving_model.rb +5 -3
- data/spec/shared_behaviours/hiera_indirections.rb +4 -3
- data/spec/shared_behaviours/iterative_functions.rb +1 -0
- data/spec/shared_behaviours/memory_terminus.rb +2 -2
- data/spec/shared_examples/rhel_package_provider.rb +70 -112
- data/spec/spec_helper.rb +2 -11
- data/spec/unit/agent/disabler_spec.rb +5 -4
- data/spec/unit/agent/locker_spec.rb +13 -12
- data/spec/unit/agent_spec.rb +85 -80
- data/spec/unit/application/agent_spec.rb +93 -88
- data/spec/unit/application/apply_spec.rb +83 -82
- data/spec/unit/application/config_spec.rb +1 -0
- data/spec/unit/application/describe_spec.rb +7 -6
- data/spec/unit/application/device_spec.rb +419 -395
- data/spec/unit/application/doc_spec.rb +46 -44
- data/spec/unit/application/face_base_spec.rb +62 -61
- data/spec/unit/application/facts_spec.rb +4 -3
- data/spec/unit/application/filebucket_spec.rb +74 -66
- data/spec/unit/application/indirection_base_spec.rb +6 -8
- data/spec/unit/application/lookup_spec.rb +26 -26
- data/spec/unit/application/resource_spec.rb +48 -42
- data/spec/unit/application/ssl_spec.rb +3 -8
- data/spec/unit/application_spec.rb +98 -86
- data/spec/unit/capability_spec.rb +6 -6
- data/spec/unit/certificate_factory_spec.rb +5 -3
- data/spec/unit/configurer/downloader_spec.rb +21 -20
- data/spec/unit/configurer/fact_handler_spec.rb +3 -2
- data/spec/unit/configurer/plugin_handler_spec.rb +8 -41
- data/spec/unit/configurer_spec.rb +198 -194
- data/spec/unit/confine/exists_spec.rb +15 -17
- data/spec/unit/confine/false_spec.rb +6 -32
- data/spec/unit/confine/feature_spec.rb +5 -7
- data/spec/unit/confine/true_spec.rb +6 -32
- data/spec/unit/confine/variable_spec.rb +15 -14
- data/spec/unit/confine_collection_spec.rb +29 -28
- data/spec/unit/confine_spec.rb +14 -13
- data/spec/unit/confiner_spec.rb +11 -10
- data/spec/unit/context/trusted_information_spec.rb +1 -1
- data/spec/unit/daemon_spec.rb +36 -35
- data/spec/unit/data_providers/function_data_provider_spec.rb +1 -0
- data/spec/unit/data_providers/hiera_data_provider_spec.rb +1 -0
- data/spec/unit/datatypes_spec.rb +4 -3
- data/spec/unit/defaults_spec.rb +27 -18
- data/spec/unit/environments_spec.rb +7 -7
- data/spec/unit/etc_spec.rb +32 -30
- data/spec/unit/external/pson_spec.rb +1 -0
- data/spec/unit/face/catalog_spec.rb +1 -0
- data/spec/unit/face/config_spec.rb +35 -31
- data/spec/unit/face/epp_face_spec.rb +4 -3
- data/spec/unit/face/facts_spec.rb +6 -5
- data/spec/unit/face/generate_spec.rb +5 -4
- data/spec/unit/face/help_spec.rb +8 -7
- data/spec/unit/face/key_spec.rb +1 -0
- data/spec/unit/face/man_spec.rb +2 -1
- data/spec/unit/face/module/install_spec.rb +5 -3
- data/spec/unit/face/module/list_spec.rb +12 -2
- data/spec/unit/face/module/search_spec.rb +9 -11
- data/spec/unit/face/module/uninstall_spec.rb +8 -4
- data/spec/unit/face/node_spec.rb +24 -23
- data/spec/unit/face/parser_spec.rb +18 -3
- data/spec/unit/face/plugin_spec.rb +9 -36
- data/spec/unit/face/status_spec.rb +1 -0
- data/spec/unit/file_bucket/dipper_spec.rb +20 -24
- data/spec/unit/file_bucket/file_spec.rb +2 -0
- data/spec/unit/file_serving/base_spec.rb +15 -14
- data/spec/unit/file_serving/configuration/parser_spec.rb +28 -27
- data/spec/unit/file_serving/configuration_spec.rb +66 -63
- data/spec/unit/file_serving/content_spec.rb +11 -10
- data/spec/unit/file_serving/fileset_spec.rb +58 -63
- data/spec/unit/file_serving/http_metadata_spec.rb +7 -8
- data/spec/unit/file_serving/metadata_spec.rb +36 -36
- data/spec/unit/file_serving/mount/file_spec.rb +32 -31
- data/spec/unit/file_serving/mount/locales_spec.rb +24 -23
- data/spec/unit/file_serving/mount/modules_spec.rb +15 -14
- data/spec/unit/file_serving/mount/pluginfacts_spec.rb +24 -23
- data/spec/unit/file_serving/mount/plugins_spec.rb +24 -23
- data/spec/unit/file_serving/mount/tasks_spec.rb +15 -14
- data/spec/unit/file_serving/mount_spec.rb +1 -0
- data/spec/unit/file_serving/terminus_helper_spec.rb +42 -37
- data/spec/unit/file_serving/terminus_selector_spec.rb +13 -12
- data/spec/unit/file_system/uniquefile_spec.rb +4 -4
- data/spec/unit/file_system_spec.rb +2 -2
- data/spec/unit/forge/errors_spec.rb +1 -1
- data/spec/unit/forge/forge_spec.rb +16 -17
- data/spec/unit/forge/module_release_spec.rb +18 -18
- data/spec/unit/forge/repository_spec.rb +30 -29
- data/spec/unit/forge_spec.rb +11 -15
- data/spec/unit/functions/binary_file_spec.rb +3 -3
- data/spec/unit/functions/contain_spec.rb +2 -0
- data/spec/unit/functions/defined_spec.rb +1 -0
- data/spec/unit/functions/epp_spec.rb +2 -2
- data/spec/unit/functions/find_file_spec.rb +7 -7
- data/spec/unit/functions/include_spec.rb +4 -0
- data/spec/unit/functions/lookup_fixture_spec.rb +1 -0
- data/spec/unit/functions/lookup_spec.rb +2 -1
- data/spec/unit/functions/module_directory_spec.rb +12 -12
- data/spec/unit/functions/new_spec.rb +0 -15
- data/spec/unit/functions/require_spec.rb +3 -0
- data/spec/unit/functions/shared.rb +8 -5
- data/spec/unit/functions/versioncmp_spec.rb +2 -1
- data/spec/unit/functions4_spec.rb +10 -9
- data/spec/unit/gettext/config_spec.rb +4 -4
- data/spec/unit/gettext/module_loading_spec.rb +7 -7
- data/spec/unit/graph/rb_tree_map_spec.rb +2 -0
- data/spec/unit/graph/relationship_graph_spec.rb +2 -1
- data/spec/unit/graph/simple_graph_spec.rb +10 -9
- data/spec/unit/hiera/scope_spec.rb +0 -7
- data/spec/unit/hiera_puppet_spec.rb +20 -20
- data/spec/unit/indirector/catalog/compiler_spec.rb +149 -147
- data/spec/unit/indirector/catalog/json_spec.rb +2 -1
- data/spec/unit/indirector/catalog/msgpack_spec.rb +1 -0
- data/spec/unit/indirector/catalog/rest_spec.rb +1 -0
- data/spec/unit/indirector/catalog/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/catalog/yaml_spec.rb +1 -0
- data/spec/unit/indirector/certificate/file_spec.rb +1 -0
- data/spec/unit/indirector/certificate/rest_spec.rb +10 -8
- data/spec/unit/indirector/certificate_request/file_spec.rb +1 -0
- data/spec/unit/indirector/certificate_request/rest_spec.rb +1 -0
- data/spec/unit/indirector/direct_file_server_spec.rb +18 -17
- data/spec/unit/indirector/envelope_spec.rb +2 -1
- data/spec/unit/indirector/exec_spec.rb +5 -4
- data/spec/unit/indirector/face_spec.rb +9 -9
- data/spec/unit/indirector/facts/facter_spec.rb +43 -37
- data/spec/unit/indirector/facts/network_device_spec.rb +9 -8
- data/spec/unit/indirector/facts/rest_spec.rb +8 -7
- data/spec/unit/indirector/facts/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/facts/yaml_spec.rb +1 -0
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +4 -3
- data/spec/unit/indirector/file_bucket_file/rest_spec.rb +1 -0
- data/spec/unit/indirector/file_bucket_file/selector_spec.rb +5 -4
- data/spec/unit/indirector/file_content/file_server_spec.rb +1 -0
- data/spec/unit/indirector/file_content/file_spec.rb +1 -0
- data/spec/unit/indirector/file_content/rest_spec.rb +1 -0
- data/spec/unit/indirector/file_content/selector_spec.rb +1 -0
- data/spec/unit/indirector/file_metadata/file_server_spec.rb +1 -0
- data/spec/unit/indirector/file_metadata/file_spec.rb +13 -12
- data/spec/unit/indirector/file_metadata/rest_spec.rb +1 -0
- data/spec/unit/indirector/file_metadata/selector_spec.rb +1 -0
- data/spec/unit/indirector/file_server_spec.rb +87 -87
- data/spec/unit/indirector/indirection_spec.rb +226 -242
- data/spec/unit/indirector/json_spec.rb +9 -7
- data/spec/unit/indirector/key/file_spec.rb +22 -21
- data/spec/unit/indirector/memory_spec.rb +7 -6
- data/spec/unit/indirector/msgpack_spec.rb +9 -7
- data/spec/unit/indirector/node/exec_spec.rb +3 -2
- data/spec/unit/indirector/node/memory_spec.rb +4 -2
- data/spec/unit/indirector/node/msgpack_spec.rb +1 -0
- data/spec/unit/indirector/node/plain_spec.rb +4 -2
- data/spec/unit/indirector/node/rest_spec.rb +1 -0
- data/spec/unit/indirector/node/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/node/yaml_spec.rb +1 -0
- data/spec/unit/indirector/none_spec.rb +5 -5
- data/spec/unit/indirector/plain_spec.rb +8 -7
- data/spec/unit/indirector/report/msgpack_spec.rb +1 -0
- data/spec/unit/indirector/report/processor_spec.rb +22 -21
- data/spec/unit/indirector/report/rest_spec.rb +12 -11
- data/spec/unit/indirector/report/yaml_spec.rb +1 -0
- data/spec/unit/indirector/request_spec.rb +12 -11
- data/spec/unit/indirector/resource/ral_spec.rb +54 -47
- data/spec/unit/indirector/resource/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/rest_spec.rb +110 -113
- data/spec/unit/indirector/ssl_file_spec.rb +65 -64
- data/spec/unit/indirector/status/local_spec.rb +1 -0
- data/spec/unit/indirector/status/rest_spec.rb +1 -0
- data/spec/unit/indirector/store_configs_spec.rb +1 -0
- data/spec/unit/indirector/terminus_spec.rb +27 -27
- data/spec/unit/indirector/yaml_spec.rb +6 -5
- data/spec/unit/indirector_spec.rb +2 -1
- data/spec/unit/info_service_spec.rb +1 -1
- data/spec/unit/interface/action_builder_spec.rb +1 -0
- data/spec/unit/interface/action_manager_spec.rb +1 -0
- data/spec/unit/interface/action_spec.rb +3 -2
- data/spec/unit/interface/documentation_spec.rb +1 -0
- data/spec/unit/interface/face_collection_spec.rb +12 -19
- data/spec/unit/interface_spec.rb +3 -3
- data/spec/unit/man_spec.rb +4 -3
- data/spec/unit/module_spec.rb +51 -46
- data/spec/unit/module_tool/applications/installer_spec.rb +11 -10
- data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
- data/spec/unit/module_tool/applications/uninstaller_spec.rb +2 -1
- data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
- data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
- data/spec/unit/module_tool/install_directory_spec.rb +8 -8
- data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
- data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
- data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
- data/spec/unit/module_tool/tar_spec.rb +13 -12
- data/spec/unit/module_tool_spec.rb +12 -7
- data/spec/unit/network/auth_config_parser_spec.rb +13 -11
- data/spec/unit/network/authconfig_spec.rb +18 -17
- data/spec/unit/network/authorization_spec.rb +5 -4
- data/spec/unit/network/authstore_spec.rb +1 -0
- data/spec/unit/network/format_handler_spec.rb +1 -0
- data/spec/unit/network/format_spec.rb +10 -9
- data/spec/unit/network/format_support_spec.rb +29 -28
- data/spec/unit/network/formats_spec.rb +5 -4
- data/spec/unit/network/http/api/indirected_routes_spec.rb +29 -24
- data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
- data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
- data/spec/unit/network/http/api/master/v3/environments_spec.rb +7 -6
- data/spec/unit/network/http/api_spec.rb +2 -0
- data/spec/unit/network/http/compression_spec.rb +22 -21
- data/spec/unit/network/http/connection_spec.rb +121 -30
- data/spec/unit/network/http/factory_spec.rb +6 -11
- data/spec/unit/network/http/handler_spec.rb +18 -9
- data/spec/unit/network/http/nocache_pool_spec.rb +7 -6
- data/spec/unit/network/http/pool_spec.rb +29 -28
- data/spec/unit/network/http/request_spec.rb +2 -0
- data/spec/unit/network/http/response_spec.rb +13 -11
- data/spec/unit/network/http/route_spec.rb +1 -0
- data/spec/unit/network/http/session_spec.rb +2 -1
- data/spec/unit/network/http/site_spec.rb +1 -0
- data/spec/unit/network/http_pool_spec.rb +9 -18
- data/spec/unit/network/http_spec.rb +1 -0
- data/spec/unit/network/resolver_spec.rb +26 -25
- data/spec/unit/network/rights_spec.rb +53 -52
- data/spec/unit/node/environment_spec.rb +15 -14
- data/spec/unit/node/facts_spec.rb +7 -5
- data/spec/unit/node_spec.rb +10 -4
- data/spec/unit/other/selinux_spec.rb +1 -0
- data/spec/unit/parameter/boolean_spec.rb +2 -1
- data/spec/unit/parameter/package_options_spec.rb +2 -1
- data/spec/unit/parameter/path_spec.rb +1 -0
- data/spec/unit/parameter/value_collection_spec.rb +1 -0
- data/spec/unit/parameter/value_spec.rb +1 -0
- data/spec/unit/parameter_spec.rb +9 -9
- data/spec/unit/parser/ast/block_expression_spec.rb +8 -6
- data/spec/unit/parser/ast/leaf_spec.rb +21 -20
- data/spec/unit/parser/compiler_spec.rb +96 -84
- data/spec/unit/parser/environment_compiler_spec.rb +8 -7
- data/spec/unit/parser/files_spec.rb +1 -0
- data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
- data/spec/unit/parser/functions/digest_spec.rb +1 -0
- data/spec/unit/parser/functions/fail_spec.rb +2 -1
- data/spec/unit/parser/functions/file_spec.rb +14 -13
- data/spec/unit/parser/functions/fqdn_rand_spec.rb +6 -5
- data/spec/unit/parser/functions/generate_spec.rb +8 -7
- data/spec/unit/parser/functions/inline_template_spec.rb +1 -0
- data/spec/unit/parser/functions/regsubst_spec.rb +1 -0
- data/spec/unit/parser/functions/scanf_spec.rb +1 -0
- data/spec/unit/parser/functions/shellquote_spec.rb +1 -0
- data/spec/unit/parser/functions/split_spec.rb +1 -0
- data/spec/unit/parser/functions/sprintf_spec.rb +1 -0
- data/spec/unit/parser/functions/tag_spec.rb +2 -1
- data/spec/unit/parser/functions/tagged_spec.rb +3 -2
- data/spec/unit/parser/functions/template_spec.rb +13 -13
- data/spec/unit/parser/functions/versioncmp_spec.rb +2 -1
- data/spec/unit/parser/functions_spec.rb +7 -6
- data/spec/unit/parser/relationship_spec.rb +1 -0
- data/spec/unit/parser/resource_spec.rb +42 -42
- data/spec/unit/parser/scope_spec.rb +35 -39
- data/spec/unit/parser/templatewrapper_spec.rb +12 -11
- data/spec/unit/parser/type_loader_spec.rb +19 -17
- data/spec/unit/pops/adaptable_spec.rb +1 -0
- data/spec/unit/pops/benchmark_spec.rb +1 -0
- data/spec/unit/pops/evaluator/access_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/basic_expressions_spec.rb +1 -0
- data/spec/unit/pops/evaluator/collections_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/comparison_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -0
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +47 -10
- data/spec/unit/pops/evaluator/logical_ops_spec.rb +1 -0
- data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +1 -0
- data/spec/unit/pops/evaluator/string_interpolation_spec.rb +1 -0
- data/spec/unit/pops/evaluator/variables_spec.rb +1 -0
- data/spec/unit/pops/factory_spec.rb +4 -3
- data/spec/unit/pops/issues_spec.rb +20 -19
- data/spec/unit/pops/loaders/loader_spec.rb +4 -8
- data/spec/unit/pops/loaders/loaders_spec.rb +31 -101
- data/spec/unit/pops/lookup/context_spec.rb +1 -0
- data/spec/unit/pops/lookup/interpolation_spec.rb +3 -2
- data/spec/unit/pops/merge_strategy_spec.rb +1 -0
- data/spec/unit/pops/migration_spec.rb +5 -3
- data/spec/unit/pops/model/model_spec.rb +1 -0
- data/spec/unit/pops/model/pn_transformer_spec.rb +1 -4
- data/spec/unit/pops/parser/locator_spec.rb +6 -48
- data/spec/unit/pops/parser/parse_application_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_calls_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_capabilities_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_conditionals_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_containers_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_heredoc_spec.rb +15 -111
- data/spec/unit/pops/parser/parse_plan_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_resource_spec.rb +1 -0
- data/spec/unit/pops/parser/parse_site_spec.rb +1 -0
- data/spec/unit/pops/parser/pn_parser_spec.rb +1 -0
- data/spec/unit/pops/pn_spec.rb +1 -0
- data/spec/unit/pops/resource/resource_type_impl_spec.rb +1 -0
- data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
- data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
- data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
- data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
- data/spec/unit/pops/types/string_converter_spec.rb +5 -1
- data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
- data/spec/unit/pops/types/type_calculator_spec.rb +30 -30
- data/spec/unit/pops/types/type_mismatch_describer_spec.rb +0 -9
- data/spec/unit/pops/types/type_parser_spec.rb +13 -13
- data/spec/unit/pops/validator/validator_spec.rb +2 -1
- data/spec/unit/pops/visitor_spec.rb +1 -0
- data/spec/unit/property/boolean_spec.rb +1 -1
- data/spec/unit/property/ensure_spec.rb +1 -0
- data/spec/unit/property/keyvalue_spec.rb +34 -32
- data/spec/unit/property/list_spec.rb +27 -26
- data/spec/unit/property/ordered_list_spec.rb +14 -10
- data/spec/unit/property_spec.rb +43 -42
- data/spec/unit/provider/aix_object_spec.rb +45 -47
- data/spec/unit/provider/command_spec.rb +9 -9
- data/spec/unit/provider/exec/posix_spec.rb +31 -6
- data/spec/unit/provider/exec/shell_spec.rb +1 -0
- data/spec/unit/provider/exec/windows_spec.rb +4 -2
- data/spec/unit/provider/exec_spec.rb +1 -0
- data/spec/unit/provider/file/posix_spec.rb +24 -22
- data/spec/unit/provider/file/windows_spec.rb +17 -15
- data/spec/unit/provider/group/aix_spec.rb +2 -3
- data/spec/unit/provider/group/groupadd_spec.rb +26 -30
- data/spec/unit/provider/group/ldap_spec.rb +18 -18
- data/spec/unit/provider/group/pw_spec.rb +11 -11
- data/spec/unit/provider/group/windows_adsi_spec.rb +53 -59
- data/spec/unit/provider/ldap_spec.rb +62 -61
- data/spec/unit/provider/nameservice/directoryservice_spec.rb +36 -35
- data/spec/unit/provider/nameservice_spec.rb +40 -38
- data/spec/unit/provider/package/aix_spec.rb +15 -15
- data/spec/unit/provider/package/appdmg_spec.rb +13 -13
- data/spec/unit/provider/package/apt_spec.rb +27 -44
- data/spec/unit/provider/package/aptitude_spec.rb +7 -6
- data/spec/unit/provider/package/aptrpm_spec.rb +12 -7
- data/spec/unit/provider/package/base_spec.rb +4 -4
- data/spec/unit/provider/package/dnf_spec.rb +20 -18
- data/spec/unit/provider/package/dpkg_spec.rb +53 -70
- data/spec/unit/provider/package/freebsd_spec.rb +11 -11
- data/spec/unit/provider/package/gem_spec.rb +55 -132
- data/spec/unit/provider/package/hpux_spec.rb +8 -8
- data/spec/unit/provider/package/macports_spec.rb +42 -46
- data/spec/unit/provider/package/nim_spec.rb +39 -30
- data/spec/unit/provider/package/openbsd_spec.rb +39 -36
- data/spec/unit/provider/package/opkg_spec.rb +26 -23
- data/spec/unit/provider/package/pacman_spec.rb +118 -97
- data/spec/unit/provider/package/pip3_spec.rb +0 -17
- data/spec/unit/provider/package/pip_spec.rb +106 -95
- data/spec/unit/provider/package/pkg_spec.rb +109 -109
- data/spec/unit/provider/package/pkgdmg_spec.rb +63 -65
- data/spec/unit/provider/package/pkgin_spec.rb +8 -10
- data/spec/unit/provider/package/pkgng_spec.rb +31 -22
- data/spec/unit/provider/package/pkgutil_spec.rb +49 -45
- data/spec/unit/provider/package/portage_spec.rb +74 -70
- data/spec/unit/provider/package/puppet_gem_spec.rb +13 -37
- data/spec/unit/provider/package/rpm_spec.rb +76 -154
- data/spec/unit/provider/package/sun_spec.rb +18 -16
- data/spec/unit/provider/package/tdnf_spec.rb +2 -2
- data/spec/unit/provider/package/up2date_spec.rb +4 -2
- data/spec/unit/provider/package/urpmi_spec.rb +17 -15
- data/spec/unit/provider/package/windows/exe_package_spec.rb +15 -12
- data/spec/unit/provider/package/windows/msi_package_spec.rb +22 -19
- data/spec/unit/provider/package/windows/package_spec.rb +42 -37
- data/spec/unit/provider/package/windows_spec.rb +32 -47
- data/spec/unit/provider/package/yum_spec.rb +7 -7
- data/spec/unit/provider/package/zypper_spec.rb +87 -87
- data/spec/unit/provider/parsedfile_spec.rb +45 -44
- data/spec/unit/provider/service/base_spec.rb +5 -4
- data/spec/unit/provider/service/bsd_spec.rb +29 -27
- data/spec/unit/provider/service/daemontools_spec.rb +35 -35
- data/spec/unit/provider/service/debian_spec.rb +38 -38
- data/spec/unit/provider/service/freebsd_spec.rb +18 -18
- data/spec/unit/provider/service/gentoo_spec.rb +55 -50
- data/spec/unit/provider/service/init_spec.rb +52 -53
- data/spec/unit/provider/service/launchd_spec.rb +116 -138
- data/spec/unit/provider/service/openbsd_spec.rb +50 -50
- data/spec/unit/provider/service/openrc_spec.rb +45 -43
- data/spec/unit/provider/service/openwrt_spec.rb +31 -26
- data/spec/unit/provider/service/rcng_spec.rb +14 -14
- data/spec/unit/provider/service/redhat_spec.rb +43 -45
- data/spec/unit/provider/service/runit_spec.rb +27 -29
- data/spec/unit/provider/service/smf_spec.rb +66 -74
- data/spec/unit/provider/service/src_spec.rb +47 -46
- data/spec/unit/provider/service/systemd_spec.rb +136 -109
- data/spec/unit/provider/service/upstart_spec.rb +93 -77
- data/spec/unit/provider/service/windows_spec.rb +41 -33
- data/spec/unit/provider/user/aix_spec.rb +31 -31
- data/spec/unit/provider/user/directoryservice_spec.rb +114 -146
- data/spec/unit/provider/user/hpux_spec.rb +16 -16
- data/spec/unit/provider/user/ldap_spec.rb +57 -57
- data/spec/unit/provider/user/openbsd_spec.rb +12 -10
- data/spec/unit/provider/user/pw_spec.rb +35 -37
- data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
- data/spec/unit/provider/user/useradd_spec.rb +92 -93
- data/spec/unit/provider/user/windows_adsi_spec.rb +60 -59
- data/spec/unit/provider_spec.rb +35 -35
- data/spec/unit/puppet_pal_2pec.rb +5 -4
- data/spec/unit/puppet_pal_spec.rb +1 -0
- data/spec/unit/puppet_spec.rb +7 -6
- data/spec/unit/relationship_spec.rb +1 -0
- data/spec/unit/reports/http_spec.rb +23 -21
- data/spec/unit/reports/store_spec.rb +4 -3
- data/spec/unit/reports_spec.rb +14 -12
- data/spec/unit/resource/capability_finder_spec.rb +17 -15
- data/spec/unit/resource/catalog_spec.rb +68 -72
- data/spec/unit/resource/status_spec.rb +8 -6
- data/spec/unit/resource/type_collection_spec.rb +18 -17
- data/spec/unit/resource/type_spec.rb +35 -34
- data/spec/unit/resource_spec.rb +63 -36
- data/spec/unit/rest/client_spec.rb +135 -0
- data/spec/unit/rest/route_spec.rb +6 -6
- data/spec/unit/scheduler/job_spec.rb +1 -0
- data/spec/unit/scheduler/scheduler_spec.rb +1 -0
- data/spec/unit/scheduler/splay_job_spec.rb +2 -1
- data/spec/unit/settings/array_setting_spec.rb +1 -1
- data/spec/unit/settings/autosign_setting_spec.rb +9 -9
- data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
- data/spec/unit/settings/config_file_spec.rb +1 -0
- data/spec/unit/settings/directory_setting_spec.rb +7 -2
- data/spec/unit/settings/duration_setting_spec.rb +2 -1
- data/spec/unit/settings/enum_setting_spec.rb +1 -1
- data/spec/unit/settings/environment_conf_spec.rb +6 -4
- data/spec/unit/settings/file_setting_spec.rb +46 -44
- data/spec/unit/settings/path_setting_spec.rb +2 -1
- data/spec/unit/settings/priority_setting_spec.rb +2 -1
- data/spec/unit/settings/string_setting_spec.rb +15 -14
- data/spec/unit/settings/terminus_setting_spec.rb +2 -1
- data/spec/unit/settings/value_translator_spec.rb +1 -0
- data/spec/unit/settings_spec.rb +224 -253
- data/spec/unit/ssl/base_spec.rb +15 -14
- data/spec/unit/ssl/certificate_request_spec.rb +58 -62
- data/spec/unit/ssl/certificate_spec.rb +25 -23
- data/spec/unit/ssl/digest_spec.rb +1 -0
- data/spec/unit/ssl/host_spec.rb +149 -166
- data/spec/unit/ssl/key_spec.rb +31 -30
- data/spec/unit/ssl/validator_spec.rb +39 -40
- data/spec/unit/task_spec.rb +45 -44
- data/spec/unit/transaction/additional_resource_generator_spec.rb +5 -3
- data/spec/unit/transaction/event_manager_spec.rb +88 -87
- data/spec/unit/transaction/event_spec.rb +15 -16
- data/spec/unit/transaction/persistence_spec.rb +17 -16
- data/spec/unit/transaction/report_spec.rb +12 -11
- data/spec/unit/transaction/resource_harness_spec.rb +31 -52
- data/spec/unit/transaction_spec.rb +87 -140
- data/spec/unit/type/component_spec.rb +1 -0
- data/spec/unit/type/exec_spec.rb +50 -101
- data/spec/unit/type/file/checksum_spec.rb +10 -9
- data/spec/unit/type/file/checksum_value_spec.rb +32 -31
- data/spec/unit/type/file/content_spec.rb +61 -58
- data/spec/unit/type/file/ctime_spec.rb +1 -0
- data/spec/unit/type/file/ensure_spec.rb +13 -12
- data/spec/unit/type/file/group_spec.rb +7 -5
- data/spec/unit/type/file/mode_spec.rb +6 -4
- data/spec/unit/type/file/mtime_spec.rb +1 -0
- data/spec/unit/type/file/owner_spec.rb +8 -6
- data/spec/unit/type/file/selinux_spec.rb +19 -17
- data/spec/unit/type/file/source_spec.rb +101 -104
- data/spec/unit/type/file/type_spec.rb +1 -0
- data/spec/unit/type/file_spec.rb +185 -195
- data/spec/unit/type/filebucket_spec.rb +10 -11
- data/spec/unit/type/group_spec.rb +8 -6
- data/spec/unit/type/noop_metaparam_spec.rb +2 -1
- data/spec/unit/type/package/package_settings_spec.rb +23 -44
- data/spec/unit/type/package_spec.rb +57 -56
- data/spec/unit/type/resources_spec.rb +74 -72
- data/spec/unit/type/schedule_spec.rb +26 -24
- data/spec/unit/type/service_spec.rb +75 -49
- data/spec/unit/type/stage_spec.rb +1 -0
- data/spec/unit/type/tidy_spec.rb +62 -61
- data/spec/unit/type/user_spec.rb +25 -24
- data/spec/unit/type/whit_spec.rb +1 -0
- data/spec/unit/type_spec.rb +54 -55
- data/spec/unit/util/at_fork_spec.rb +19 -18
- data/spec/unit/util/autoload_spec.rb +56 -55
- data/spec/unit/util/backups_spec.rb +35 -34
- data/spec/unit/util/character_encoding_spec.rb +5 -5
- data/spec/unit/util/checksums_spec.rb +39 -38
- data/spec/unit/util/colors_spec.rb +2 -1
- data/spec/unit/util/command_line_spec.rb +20 -40
- data/spec/unit/util/constant_inflector_spec.rb +1 -0
- data/spec/unit/util/diff_spec.rb +8 -7
- data/spec/unit/util/errors_spec.rb +1 -0
- data/spec/unit/util/execution_spec.rb +163 -187
- data/spec/unit/util/execution_stub_spec.rb +1 -0
- data/spec/unit/util/feature_spec.rb +14 -21
- data/spec/unit/util/filetype_spec.rb +49 -49
- data/spec/unit/util/http_proxy_spec.rb +12 -12
- data/spec/unit/util/inifile_spec.rb +31 -26
- data/spec/unit/util/json_lockfile_spec.rb +5 -3
- data/spec/unit/util/ldap/connection_spec.rb +25 -26
- data/spec/unit/util/ldap/generator_spec.rb +1 -0
- data/spec/unit/util/ldap/manager_spec.rb +101 -102
- data/spec/unit/util/lockfile_spec.rb +1 -0
- data/spec/unit/util/log/destinations_spec.rb +33 -30
- data/spec/unit/util/log_spec.rb +34 -48
- data/spec/unit/util/logging_spec.rb +72 -58
- data/spec/unit/util/metric_spec.rb +1 -0
- data/spec/unit/util/monkey_patches_spec.rb +9 -7
- data/spec/unit/util/multi_match_spec.rb +1 -0
- data/spec/unit/util/network_device/config_spec.rb +1 -0
- data/spec/unit/util/network_device/transport/base_spec.rb +6 -5
- data/spec/unit/util/network_device_spec.rb +9 -7
- data/spec/unit/util/package_spec.rb +1 -0
- data/spec/unit/util/pidlock_spec.rb +15 -60
- data/spec/unit/util/plist_spec.rb +33 -40
- data/spec/unit/util/posix_spec.rb +51 -54
- data/spec/unit/util/rdoc_spec.rb +10 -9
- data/spec/unit/util/reference_spec.rb +1 -0
- data/spec/unit/util/resource_template_spec.rb +20 -20
- data/spec/unit/util/retry_action_spec.rb +8 -7
- data/spec/unit/util/rubygems_spec.rb +8 -7
- data/spec/unit/util/run_mode_spec.rb +4 -3
- data/spec/unit/util/selinux_spec.rb +72 -79
- data/spec/unit/util/splayer_spec.rb +9 -8
- data/spec/unit/util/ssl_spec.rb +1 -0
- data/spec/unit/util/storage_spec.rb +23 -22
- data/spec/unit/util/suidmanager_spec.rb +54 -45
- data/spec/unit/util/symbolic_file_mode_spec.rb +1 -0
- data/spec/unit/util/tag_set_spec.rb +1 -0
- data/spec/unit/util/tagging_spec.rb +1 -0
- data/spec/unit/util/terminal_spec.rb +10 -9
- data/spec/unit/util/user_attr_spec.rb +2 -1
- data/spec/unit/util/warnings_spec.rb +4 -3
- data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
- data/spec/unit/util/watcher_spec.rb +21 -51
- data/spec/unit/util/windows/access_control_entry_spec.rb +1 -0
- data/spec/unit/util/windows/access_control_list_spec.rb +1 -0
- data/spec/unit/util/windows/adsi_spec.rb +138 -136
- data/spec/unit/util/windows/api_types_spec.rb +1 -0
- data/spec/unit/util/windows/eventlog_spec.rb +12 -9
- data/spec/unit/util/windows/file_spec.rb +1 -0
- data/spec/unit/util/windows/root_certs_spec.rb +1 -0
- data/spec/unit/util/windows/security_descriptor_spec.rb +2 -0
- data/spec/unit/util/windows/service_spec.rb +103 -100
- data/spec/unit/util/windows/sid_spec.rb +13 -11
- data/spec/unit/util/windows/string_spec.rb +1 -0
- data/spec/unit/util_spec.rb +57 -55
- data/spec/unit/version_spec.rb +6 -6
- metadata +20 -32
- data/CODEOWNERS +0 -30
- data/ext/autotest/Rakefile +0 -8
- data/ext/autotest/config +0 -43
- data/ext/autotest/readme.rst +0 -16
- data/lib/puppet/confine/boolean.rb +0 -45
- data/lib/puppet/provider/package_targetable.rb +0 -68
- data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb +0 -11
- data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb +0 -11
- data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb +0 -11
- data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb +0 -12
- data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb +0 -9
- data/spec/fixtures/unit/provider/package/pkgng/pkg.info +0 -7
- data/spec/fixtures/unit/provider/package/pkgng/pkg.query_absent +0 -1
- data/spec/integration/network/http_pool_spec.rb +0 -120
- data/spec/integration/provider/file/windows_spec.rb +0 -162
- data/spec/lib/puppet_spec/https.rb +0 -166
- data/spec/unit/settings/server_list_setting_spec.rb +0 -21
- data/spec/watchr.rb +0 -137
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
require 'puppet_spec/files'
|
3
4
|
require 'puppet_pal'
|
@@ -385,8 +386,8 @@ describe 'Puppet Pal' do
|
|
385
386
|
end
|
386
387
|
|
387
388
|
{ nil => Puppet::Error,
|
388
|
-
'0xWAT' => Puppet::ParseErrorWithIssue,
|
389
|
-
'$0 = 1' => Puppet::ParseErrorWithIssue,
|
389
|
+
'0xWAT' => Puppet::ParseErrorWithIssue,
|
390
|
+
'$0 = 1' => Puppet::ParseErrorWithIssue,
|
390
391
|
'else 32' => Puppet::ParseErrorWithIssue,
|
391
392
|
}.each_pair do |input, error_class|
|
392
393
|
it "'parse_string' raises an error for invalid input: '#{input}'" do
|
@@ -512,7 +513,7 @@ describe 'Puppet Pal' do
|
|
512
513
|
|
513
514
|
# TODO: there is something amiss with the metadata wrt dependencies - when metadata is present there is an error
|
514
515
|
# that dependencies could not be resolved. Metadata is therefore commented out.
|
515
|
-
# Dependency based visibility is probably something that we should remove...
|
516
|
+
# Dependency based visibility is probably something that we should remove...
|
516
517
|
let(:modules) {
|
517
518
|
{
|
518
519
|
'a' => {
|
@@ -942,7 +943,7 @@ describe 'Puppet Pal' do
|
|
942
943
|
testing_env_dir # creates the structure
|
943
944
|
other_modules1 = File.join(environments_dir, 'other_env1/modules')
|
944
945
|
other_modules2 = File.join(environments_dir, 'other_env2/modules')
|
945
|
-
result = Puppet::Pal.in_environment('pal_env', envpath: environments_dir,
|
946
|
+
result = Puppet::Pal.in_environment('pal_env', envpath: environments_dir,
|
946
947
|
pre_modulepath: [other_modules1],
|
947
948
|
post_modulepath: [other_modules2],
|
948
949
|
facts: node_facts
|
data/spec/unit/puppet_spec.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
require 'puppet'
|
3
4
|
require 'puppet_spec/files'
|
@@ -24,8 +25,8 @@ describe Puppet do
|
|
24
25
|
end
|
25
26
|
|
26
27
|
it 'should propagate --modulepath to base environment' do
|
27
|
-
|
28
|
-
|
28
|
+
Puppet::Node::Environment.expects(:create).with(
|
29
|
+
is_a(Symbol), ['/my/modules'], Puppet::Node::Environment::NO_MANIFEST)
|
29
30
|
|
30
31
|
Puppet.base_context({
|
31
32
|
:environmentpath => '/envs',
|
@@ -35,8 +36,8 @@ describe Puppet do
|
|
35
36
|
end
|
36
37
|
|
37
38
|
it 'empty modulepath does not override basemodulepath' do
|
38
|
-
|
39
|
-
|
39
|
+
Puppet::Node::Environment.expects(:create).with(
|
40
|
+
is_a(Symbol), ['/base/modules'], Puppet::Node::Environment::NO_MANIFEST)
|
40
41
|
|
41
42
|
Puppet.base_context({
|
42
43
|
:environmentpath => '/envs',
|
@@ -46,8 +47,8 @@ describe Puppet do
|
|
46
47
|
end
|
47
48
|
|
48
49
|
it 'nil modulepath does not override basemodulepath' do
|
49
|
-
|
50
|
-
|
50
|
+
Puppet::Node::Environment.expects(:create).with(
|
51
|
+
is_a(Symbol), ['/base/modules'], Puppet::Node::Environment::NO_MANIFEST)
|
51
52
|
|
52
53
|
Puppet.base_context({
|
53
54
|
:environmentpath => '/envs',
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
require 'puppet/reports'
|
3
4
|
|
@@ -7,19 +8,19 @@ describe processor do
|
|
7
8
|
subject { Puppet::Transaction::Report.new.extend(processor) }
|
8
9
|
|
9
10
|
describe "when setting up the connection" do
|
10
|
-
let(:http) {
|
11
|
+
let(:http) { stub_everything "http" }
|
11
12
|
let(:httpok) { Net::HTTPOK.new('1.1', 200, '') }
|
12
13
|
|
13
14
|
before :each do
|
14
|
-
|
15
|
+
http.expects(:post).returns(httpok)
|
15
16
|
end
|
16
17
|
|
17
18
|
it "configures the connection for ssl when using https" do
|
18
19
|
Puppet[:reporturl] = 'https://testing:8080/the/path'
|
19
20
|
|
20
|
-
|
21
|
+
Puppet::Network::HttpPool.expects(:http_instance).with(
|
21
22
|
'testing', 8080, true
|
22
|
-
).
|
23
|
+
).returns http
|
23
24
|
|
24
25
|
subject.process
|
25
26
|
end
|
@@ -27,26 +28,26 @@ describe processor do
|
|
27
28
|
it "does not configure the connectino for ssl when using http" do
|
28
29
|
Puppet[:reporturl] = "http://testing:8080/the/path"
|
29
30
|
|
30
|
-
|
31
|
+
Puppet::Network::HttpPool.expects(:http_instance).with(
|
31
32
|
'testing', 8080, false
|
32
|
-
).
|
33
|
+
).returns http
|
33
34
|
|
34
35
|
subject.process
|
35
36
|
end
|
36
37
|
end
|
37
38
|
|
38
39
|
describe "when making a request" do
|
39
|
-
let(:connection) {
|
40
|
+
let(:connection) { stub_everything "connection" }
|
40
41
|
let(:httpok) { Net::HTTPOK.new('1.1', 200, '') }
|
41
42
|
let(:options) { {:metric_id => [:puppet, :report, :http]} }
|
42
43
|
|
43
44
|
before :each do
|
44
|
-
|
45
|
+
Puppet::Network::HttpPool.expects(:http_instance).returns(connection)
|
45
46
|
end
|
46
47
|
|
47
48
|
it "should use the path specified by the 'reporturl' setting" do
|
48
49
|
report_path = URI.parse(Puppet[:reporturl]).path
|
49
|
-
|
50
|
+
connection.expects(:post).with(report_path, anything, anything, options).returns(httpok)
|
50
51
|
|
51
52
|
subject.process
|
52
53
|
end
|
@@ -54,24 +55,24 @@ describe processor do
|
|
54
55
|
it "should use the username and password specified by the 'reporturl' setting" do
|
55
56
|
Puppet[:reporturl] = "https://user:pass@myhost.mydomain:1234/report/upload"
|
56
57
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
58
|
+
connection.expects(:post).with(anything, anything, anything,
|
59
|
+
{:metric_id => [:puppet, :report, :http],
|
60
|
+
:basic_auth => {
|
61
|
+
:user => 'user',
|
62
|
+
:password => 'pass'
|
63
|
+
}}).returns(httpok)
|
63
64
|
|
64
65
|
subject.process
|
65
66
|
end
|
66
67
|
|
67
68
|
it "should give the body as the report as YAML" do
|
68
|
-
|
69
|
+
connection.expects(:post).with(anything, subject.to_yaml, anything, options).returns(httpok)
|
69
70
|
|
70
71
|
subject.process
|
71
72
|
end
|
72
73
|
|
73
74
|
it "should set content-type to 'application/x-yaml'" do
|
74
|
-
|
75
|
+
connection.expects(:post).with(anything, anything, has_entry("Content-Type" => "application/x-yaml"), options).returns(httpok)
|
75
76
|
|
76
77
|
subject.process
|
77
78
|
end
|
@@ -80,9 +81,9 @@ describe processor do
|
|
80
81
|
if code.to_i >= 200 and code.to_i < 300
|
81
82
|
it "should succeed on http code #{code}" do
|
82
83
|
response = klass.new('1.1', code, '')
|
83
|
-
|
84
|
+
connection.expects(:post).returns(response)
|
84
85
|
|
85
|
-
|
86
|
+
Puppet.expects(:err).never
|
86
87
|
subject.process
|
87
88
|
end
|
88
89
|
end
|
@@ -90,12 +91,13 @@ describe processor do
|
|
90
91
|
if code.to_i >= 300 && ![301, 302, 307].include?(code.to_i)
|
91
92
|
it "should log error on http code #{code}" do
|
92
93
|
response = klass.new('1.1', code, '')
|
93
|
-
|
94
|
+
connection.expects(:post).returns(response)
|
94
95
|
|
95
|
-
|
96
|
+
Puppet.expects(:err)
|
96
97
|
subject.process
|
97
98
|
end
|
98
99
|
end
|
99
100
|
end
|
101
|
+
|
100
102
|
end
|
101
103
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/reports'
|
@@ -23,7 +24,7 @@ describe processor do
|
|
23
24
|
end
|
24
25
|
|
25
26
|
it "should write the report to the file in YAML" do
|
26
|
-
|
27
|
+
Time.stubs(:now).returns(Time.utc(2011,01,06,12,00,00))
|
27
28
|
@report.process
|
28
29
|
|
29
30
|
expect(File.read(File.join(Puppet[:reportdir], @report.host, "201101061200.yaml"))).to eq(@report.to_yaml)
|
@@ -31,14 +32,14 @@ describe processor do
|
|
31
32
|
|
32
33
|
it "rejects invalid hostnames" do
|
33
34
|
@report.host = ".."
|
34
|
-
|
35
|
+
Puppet::FileSystem.expects(:exist?).never
|
35
36
|
expect { @report.process }.to raise_error(ArgumentError, /Invalid node/)
|
36
37
|
end
|
37
38
|
end
|
38
39
|
|
39
40
|
describe "::destroy" do
|
40
41
|
it "rejects invalid hostnames" do
|
41
|
-
|
42
|
+
Puppet::FileSystem.expects(:unlink).never
|
42
43
|
expect { processor.destroy("..") }.to raise_error(ArgumentError, /Invalid node/)
|
43
44
|
end
|
44
45
|
end
|
data/spec/unit/reports_spec.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/reports'
|
@@ -16,11 +17,11 @@ describe Puppet::Reports do
|
|
16
17
|
end
|
17
18
|
|
18
19
|
it "should provide a method for returning documentation for all reports" do
|
19
|
-
|
20
|
-
one =
|
21
|
-
two =
|
22
|
-
|
23
|
-
|
20
|
+
Puppet::Reports.expects(:loaded_instances).with(:report).returns([:one, :two])
|
21
|
+
one = mock 'one', :doc => "onedoc"
|
22
|
+
two = mock 'two', :doc => "twodoc"
|
23
|
+
Puppet::Reports.expects(:report).with(:one).returns(one)
|
24
|
+
Puppet::Reports.expects(:report).with(:two).returns(two)
|
24
25
|
|
25
26
|
doc = Puppet::Reports.reportdocs
|
26
27
|
expect(doc.include?("onedoc")).to be_truthy
|
@@ -28,16 +29,17 @@ describe Puppet::Reports do
|
|
28
29
|
end
|
29
30
|
end
|
30
31
|
|
32
|
+
|
31
33
|
describe Puppet::Reports, " when loading report types" do
|
32
34
|
it "should use the instance loader to retrieve report types" do
|
33
|
-
|
35
|
+
Puppet::Reports.expects(:loaded_instance).with(:report, :myreporttype)
|
34
36
|
Puppet::Reports.report(:myreporttype)
|
35
37
|
end
|
36
38
|
end
|
37
39
|
|
38
40
|
describe Puppet::Reports, " when registering report types" do
|
39
41
|
it "should evaluate the supplied block as code for a module" do
|
40
|
-
|
42
|
+
Puppet::Reports.expects(:genmodule).returns(Module.new)
|
41
43
|
Puppet::Reports.register_report(:testing) { }
|
42
44
|
end
|
43
45
|
|
@@ -52,17 +54,17 @@ describe Puppet::Reports, " when registering report types" do
|
|
52
54
|
end
|
53
55
|
|
54
56
|
it "should extend the report type with the Puppet::Util::Docs module" do
|
55
|
-
mod =
|
57
|
+
mod = stub 'module', :define_method => true
|
56
58
|
|
57
|
-
|
59
|
+
Puppet::Reports.expects(:genmodule).with { |name, options, block| options[:extend] == Puppet::Util::Docs }.returns(mod)
|
58
60
|
Puppet::Reports.register_report(:testing) { }
|
59
61
|
end
|
60
62
|
|
61
63
|
it "should define a :report_name method in the module that returns the name of the report" do
|
62
|
-
mod =
|
63
|
-
|
64
|
+
mod = mock 'module'
|
65
|
+
mod.expects(:define_method).with(:report_name)
|
64
66
|
|
65
|
-
|
67
|
+
Puppet::Reports.expects(:genmodule).returns(mod)
|
66
68
|
Puppet::Reports.register_report(:testing) { }
|
67
69
|
end
|
68
70
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
require_relative '../pops/parser/parser_rspec_helper'
|
3
4
|
require 'puppet/resource/capability_finder'
|
@@ -5,14 +6,15 @@ require 'puppet/resource/capability_finder'
|
|
5
6
|
describe Puppet::Resource::CapabilityFinder do
|
6
7
|
context 'when PuppetDB is not configured' do
|
7
8
|
it 'should error' do
|
8
|
-
|
9
|
+
Puppet::Util.expects(:const_defined?).with('Puppetdb').returns false
|
9
10
|
expect { Puppet::Resource::CapabilityFinder.find('production', nil, nil) }.to raise_error(/PuppetDB is not available/)
|
10
11
|
end
|
11
12
|
end
|
12
13
|
|
13
14
|
context 'when PuppetDB is configured' do
|
15
|
+
|
14
16
|
before(:each) do
|
15
|
-
|
17
|
+
Puppet::Parser::Compiler.any_instance.stubs(:loaders).returns(loaders)
|
16
18
|
Puppet.push_context({:loaders => loaders, :current_environment => env})
|
17
19
|
if mock_pdb
|
18
20
|
module Puppet::Util::Puppetdb
|
@@ -33,7 +35,7 @@ describe Puppet::Resource::CapabilityFinder do
|
|
33
35
|
let(:loaders) { Puppet::Pops::Loaders.new(env) }
|
34
36
|
|
35
37
|
let(:response_body) { [{"type"=>"Cap", "title"=>"cap", "parameters"=>{"host"=>"ahost"}}] }
|
36
|
-
let(:response) {
|
38
|
+
let(:response) { stub('response', :body => response_body.to_json) }
|
37
39
|
|
38
40
|
def make_cap_type
|
39
41
|
Puppet::Type.newtype :cap, :is_capability => true do
|
@@ -44,8 +46,8 @@ describe Puppet::Resource::CapabilityFinder do
|
|
44
46
|
|
45
47
|
describe "when query_puppetdb method is available" do
|
46
48
|
it 'should call use the query_puppetdb method if available' do
|
47
|
-
|
48
|
-
|
49
|
+
Puppet::Util::Puppetdb.expects(:query_puppetdb).returns(response_body)
|
50
|
+
Puppet::Util::Puppetdb::Http.expects(:action).never
|
49
51
|
|
50
52
|
result = Puppet::Resource::CapabilityFinder.find('production', nil, Puppet::Resource.new('Cap', 'cap'))
|
51
53
|
expect(result['host']).to eq('ahost')
|
@@ -54,11 +56,11 @@ describe Puppet::Resource::CapabilityFinder do
|
|
54
56
|
|
55
57
|
describe "when query_puppetdb method is unavailable" do
|
56
58
|
before :each do
|
57
|
-
|
59
|
+
Puppet::Util::Puppetdb.stubs(:respond_to?).with(:query_puppetdb).returns false
|
58
60
|
end
|
59
61
|
|
60
62
|
it 'should call Puppet::Util::PuppetDB::Http.action' do
|
61
|
-
|
63
|
+
Puppet::Util::Puppetdb::Http.expects(:action).returns(response)
|
62
64
|
result = Puppet::Resource::CapabilityFinder.find('production', nil, Puppet::Resource.new('Cap', 'cap'))
|
63
65
|
expect(result['host']).to eq('ahost')
|
64
66
|
end
|
@@ -70,14 +72,14 @@ describe Puppet::Resource::CapabilityFinder do
|
|
70
72
|
|
71
73
|
it 'should search for the resource without including code_id or environment' do
|
72
74
|
resources = [{"type"=>"Cap", "title"=>"cap", "parameters"=>{"host"=>"ahost"}}]
|
73
|
-
|
75
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with(nil, nil, capability).returns resources
|
74
76
|
|
75
77
|
result = Puppet::Resource::CapabilityFinder.find('production', code_id, Puppet::Resource.new('Cap', 'cap'))
|
76
78
|
expect(result['host']).to eq('ahost')
|
77
79
|
end
|
78
80
|
|
79
81
|
it 'should return nil if no resource is found' do
|
80
|
-
|
82
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with(nil, nil, capability).returns []
|
81
83
|
|
82
84
|
result = Puppet::Resource::CapabilityFinder.find('production', code_id, capability)
|
83
85
|
expect(result).to be_nil
|
@@ -90,7 +92,7 @@ describe Puppet::Resource::CapabilityFinder do
|
|
90
92
|
end
|
91
93
|
|
92
94
|
before :each do
|
93
|
-
|
95
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with(nil, nil, capability).returns resources
|
94
96
|
end
|
95
97
|
|
96
98
|
it 'should return the resource matching environment' do
|
@@ -111,30 +113,30 @@ describe Puppet::Resource::CapabilityFinder do
|
|
111
113
|
end
|
112
114
|
|
113
115
|
before :each do
|
114
|
-
|
116
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with(nil, nil, capability).returns resources
|
115
117
|
end
|
116
118
|
|
117
119
|
it 'should return the resource matching code_id' do
|
118
|
-
|
120
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with('production', code_id, capability).returns [{"type"=>"Cap", "title"=>"cap", "parameters"=>{"host"=>"chost"}}]
|
119
121
|
|
120
122
|
result = Puppet::Resource::CapabilityFinder.find('production', code_id, capability)
|
121
123
|
expect(result['host']).to eq('chost')
|
122
124
|
end
|
123
125
|
|
124
126
|
it 'should fail if no resource matches code_id' do
|
125
|
-
|
127
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with('production', code_id, capability).returns []
|
126
128
|
|
127
129
|
expect { Puppet::Resource::CapabilityFinder.find('production', code_id, capability) }.to raise_error(Puppet::Error, /expected exactly one resource but got 2/)
|
128
130
|
end
|
129
131
|
|
130
132
|
it 'should fail if multiple resources match code_id' do
|
131
|
-
|
133
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with('production', code_id, capability).returns resources
|
132
134
|
|
133
135
|
expect { Puppet::Resource::CapabilityFinder.find('production', code_id, capability) }.to raise_error(Puppet::DevError, /expected exactly one resource but got 2/)
|
134
136
|
end
|
135
137
|
|
136
138
|
it 'should fail if no code_id was specified' do
|
137
|
-
|
139
|
+
Puppet::Resource::CapabilityFinder.stubs(:search).with('production', nil, capability).returns resources
|
138
140
|
expect { Puppet::Resource::CapabilityFinder.find('production', nil, capability) }.to raise_error(Puppet::DevError, /expected exactly one resource but got 2/)
|
139
141
|
end
|
140
142
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
require 'puppet_spec/compiler'
|
3
4
|
|
@@ -10,7 +11,7 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
10
11
|
before do
|
11
12
|
@basepath = make_absolute("/somepath")
|
12
13
|
# stub this to not try to create state.yaml
|
13
|
-
|
14
|
+
Puppet::Util::Storage.stubs(:store)
|
14
15
|
end
|
15
16
|
|
16
17
|
it "should support json, pson, dot, yaml" do
|
@@ -70,11 +71,11 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
70
71
|
|
71
72
|
Puppet[:classfile] = File.expand_path("/class/file")
|
72
73
|
|
73
|
-
fh =
|
74
|
+
fh = mock 'filehandle'
|
74
75
|
classfile = Puppet.settings.setting(:classfile)
|
75
|
-
|
76
|
+
Puppet::FileSystem.expects(:open).with(classfile.value, classfile.mode.to_i(8), "w:UTF-8").yields fh
|
76
77
|
|
77
|
-
|
78
|
+
fh.expects(:puts).with "foo\nbar"
|
78
79
|
|
79
80
|
@catalog.write_class_file
|
80
81
|
end
|
@@ -97,7 +98,7 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
97
98
|
end
|
98
99
|
|
99
100
|
it "should include a catalog_uuid" do
|
100
|
-
|
101
|
+
SecureRandom.stubs(:uuid).returns ("827a74c8-cf98-44da-9ff7-18c5e4bee41e")
|
101
102
|
catalog = Puppet::Resource::Catalog.new("host")
|
102
103
|
expect(catalog.catalog_uuid).to eq("827a74c8-cf98-44da-9ff7-18c5e4bee41e")
|
103
104
|
end
|
@@ -234,29 +235,15 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
234
235
|
@original.tag(*%w{one two three})
|
235
236
|
@original.add_class(*%w{four five six})
|
236
237
|
|
237
|
-
@r1 =
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
)
|
244
|
-
|
245
|
-
|
246
|
-
allow(@r1).to receive(:copy_as_resource).and_return(@r1)
|
247
|
-
allow(@r1).to receive(:is_a?).with(Puppet::Resource).and_return(true)
|
248
|
-
|
249
|
-
@r2 = double(
|
250
|
-
'r2',
|
251
|
-
:ref => "File[/b]",
|
252
|
-
:[] => nil,
|
253
|
-
:virtual => nil,
|
254
|
-
:catalog= => nil,
|
255
|
-
)
|
256
|
-
allow(@r2).to receive(:respond_to?)
|
257
|
-
allow(@r2).to receive(:respond_to?).with(:ref).and_return(true)
|
258
|
-
allow(@r2).to receive(:copy_as_resource).and_return(@r2)
|
259
|
-
allow(@r2).to receive(:is_a?).with(Puppet::Resource).and_return(true)
|
238
|
+
@r1 = stub_everything 'r1', :ref => "File[/a]"
|
239
|
+
@r1.stubs(:respond_to?).with(:ref).returns(true)
|
240
|
+
@r1.stubs(:copy_as_resource).returns(@r1)
|
241
|
+
@r1.stubs(:is_a?).with(Puppet::Resource).returns(true)
|
242
|
+
|
243
|
+
@r2 = stub_everything 'r2', :ref => "File[/b]"
|
244
|
+
@r2.stubs(:respond_to?).with(:ref).returns(true)
|
245
|
+
@r2.stubs(:copy_as_resource).returns(@r2)
|
246
|
+
@r2.stubs(:is_a?).with(Puppet::Resource).returns(true)
|
260
247
|
|
261
248
|
@resources = [@r1,@r2]
|
262
249
|
|
@@ -264,13 +251,13 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
264
251
|
end
|
265
252
|
|
266
253
|
it "should transform the catalog to a resource catalog" do
|
267
|
-
|
254
|
+
@original.expects(:to_catalog).with { |h,b| h == :to_resource }
|
268
255
|
|
269
256
|
@original.filter
|
270
257
|
end
|
271
258
|
|
272
259
|
it "should scan each catalog resource in turn and apply filtering block" do
|
273
|
-
@resources.each { |r|
|
260
|
+
@resources.each { |r| r.expects(:test?) }
|
274
261
|
@original.filter do |r|
|
275
262
|
r.test?
|
276
263
|
end
|
@@ -334,7 +321,7 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
334
321
|
end
|
335
322
|
|
336
323
|
it "should set itself as the resource's catalog if it is not a relationship graph" do
|
337
|
-
|
324
|
+
@one.expects(:catalog=).with(@catalog)
|
338
325
|
@catalog.add_resource @one
|
339
326
|
end
|
340
327
|
|
@@ -424,14 +411,14 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
424
411
|
it "should remove all resources when asked" do
|
425
412
|
@catalog.add_resource @one
|
426
413
|
@catalog.add_resource @two
|
427
|
-
|
428
|
-
|
414
|
+
@one.expects :remove
|
415
|
+
@two.expects :remove
|
429
416
|
@catalog.clear(true)
|
430
417
|
end
|
431
418
|
|
432
419
|
it "should support a mechanism for finishing resources" do
|
433
|
-
|
434
|
-
|
420
|
+
@one.expects :finish
|
421
|
+
@two.expects :finish
|
435
422
|
@catalog.add_resource @one
|
436
423
|
@catalog.add_resource @two
|
437
424
|
|
@@ -439,7 +426,7 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
439
426
|
end
|
440
427
|
|
441
428
|
it "should make default resources when finalizing" do
|
442
|
-
|
429
|
+
@catalog.expects(:make_default_resources)
|
443
430
|
@catalog.finalize
|
444
431
|
end
|
445
432
|
|
@@ -449,8 +436,8 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
449
436
|
end
|
450
437
|
|
451
438
|
it "should optionally support an initialization block and should finalize after such blocks" do
|
452
|
-
|
453
|
-
|
439
|
+
@one.expects :finish
|
440
|
+
@two.expects :finish
|
454
441
|
Puppet::Resource::Catalog.new("host") do |conf|
|
455
442
|
conf.add_resource @one
|
456
443
|
conf.add_resource @two
|
@@ -458,7 +445,7 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
458
445
|
end
|
459
446
|
|
460
447
|
it "should inform the resource that it is the resource's catalog" do
|
461
|
-
|
448
|
+
@one.expects(:catalog=).with(@catalog)
|
462
449
|
@catalog.add_resource @one
|
463
450
|
end
|
464
451
|
|
@@ -541,14 +528,14 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
541
528
|
it "should remove resource aliases when the target resource is removed" do
|
542
529
|
@catalog.add_resource @one
|
543
530
|
@catalog.alias(@one, "other")
|
544
|
-
|
531
|
+
@one.expects :remove
|
545
532
|
@catalog.remove_resource(@one)
|
546
533
|
expect(@catalog.resource("notify", "other")).to be_nil
|
547
534
|
end
|
548
535
|
|
549
536
|
it "should add an alias for the namevar when the title and name differ on isomorphic resource types" do
|
550
537
|
resource = Puppet::Type.type(:file).new :path => @basepath+"/something", :title => "other", :content => "blah"
|
551
|
-
|
538
|
+
resource.expects(:isomorphic?).returns(true)
|
552
539
|
@catalog.add_resource(resource)
|
553
540
|
expect(@catalog.resource(:file, "other")).to equal(resource)
|
554
541
|
expect(@catalog.resource(:file, @basepath+"/something").ref).to eq(resource.ref)
|
@@ -556,7 +543,7 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
556
543
|
|
557
544
|
it "should not add an alias for the namevar when the title and name differ on non-isomorphic resource types" do
|
558
545
|
resource = Puppet::Type.type(:file).new :path => @basepath+"/something", :title => "other", :content => "blah"
|
559
|
-
|
546
|
+
resource.expects(:isomorphic?).returns(false)
|
560
547
|
@catalog.add_resource(resource)
|
561
548
|
expect(@catalog.resource(:file, resource.title)).to equal(resource)
|
562
549
|
# We can't use .should here, because the resources respond to that method.
|
@@ -565,8 +552,8 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
565
552
|
|
566
553
|
it "should provide a method to create additional resources that also registers the resource" do
|
567
554
|
args = {:name => "/yay", :ensure => :file}
|
568
|
-
resource =
|
569
|
-
|
555
|
+
resource = stub 'file', :ref => "File[/yay]", :catalog= => @catalog, :title => "/yay", :[] => "/yay"
|
556
|
+
Puppet::Type.type(:file).expects(:new).with(args).returns(resource)
|
570
557
|
@catalog.create_resource :file, args
|
571
558
|
expect(@catalog.resource("File[/yay]")).to equal(resource)
|
572
559
|
end
|
@@ -630,20 +617,20 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
630
617
|
@catalog = Puppet::Resource::Catalog.new("host")
|
631
618
|
|
632
619
|
@transaction = Puppet::Transaction.new(@catalog, nil, Puppet::Graph::SequentialPrioritizer.new)
|
633
|
-
|
634
|
-
|
635
|
-
|
620
|
+
Puppet::Transaction.stubs(:new).returns(@transaction)
|
621
|
+
@transaction.stubs(:evaluate)
|
622
|
+
@transaction.stubs(:for_network_device=)
|
636
623
|
|
637
|
-
|
624
|
+
Puppet.settings.stubs(:use)
|
638
625
|
end
|
639
626
|
|
640
627
|
it "should create and evaluate a transaction" do
|
641
|
-
|
628
|
+
@transaction.expects(:evaluate)
|
642
629
|
@catalog.apply
|
643
630
|
end
|
644
631
|
|
645
632
|
it "should add a transaction evalution time to the report" do
|
646
|
-
|
633
|
+
@transaction.report.expects(:add_times).with(:transaction_evaluation, kind_of(Numeric))
|
647
634
|
@catalog.apply
|
648
635
|
end
|
649
636
|
|
@@ -667,17 +654,17 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
667
654
|
end
|
668
655
|
|
669
656
|
it "should pass supplied tags on to the transaction" do
|
670
|
-
|
657
|
+
@transaction.expects(:tags=).with(%w{one two})
|
671
658
|
@catalog.apply(:tags => %w{one two})
|
672
659
|
end
|
673
660
|
|
674
661
|
it "should set ignoreschedules on the transaction if specified in apply()" do
|
675
|
-
|
662
|
+
@transaction.expects(:ignoreschedules=).with(true)
|
676
663
|
@catalog.apply(:ignoreschedules => true)
|
677
664
|
end
|
678
665
|
|
679
666
|
it "should detect transaction failure and report it" do
|
680
|
-
|
667
|
+
@transaction.stubs(:evaluate).raises(RuntimeError, 'transaction failed.')
|
681
668
|
report = Puppet::Transaction::Report.new('apply')
|
682
669
|
|
683
670
|
expect { @catalog.apply(:report => report) }.to raise_error(RuntimeError)
|
@@ -687,28 +674,31 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
687
674
|
end
|
688
675
|
|
689
676
|
describe "host catalogs" do
|
677
|
+
|
690
678
|
# super() doesn't work in the setup method for some reason
|
691
679
|
before do
|
692
680
|
@catalog.host_config = true
|
693
|
-
|
681
|
+
Puppet::Util::Storage.stubs(:store)
|
694
682
|
end
|
695
683
|
|
696
684
|
it "should initialize the state database before applying a catalog" do
|
697
|
-
|
685
|
+
Puppet::Util::Storage.expects(:load)
|
698
686
|
|
699
687
|
# Short-circuit the apply, so we know we're loading before the transaction
|
700
|
-
|
688
|
+
Puppet::Transaction.expects(:new).raises ArgumentError
|
701
689
|
expect { @catalog.apply }.to raise_error(ArgumentError)
|
702
690
|
end
|
703
691
|
|
704
692
|
it "should sync the state database after applying" do
|
705
|
-
|
706
|
-
|
693
|
+
Puppet::Util::Storage.expects(:store)
|
694
|
+
@transaction.stubs :any_failed? => false
|
707
695
|
@catalog.apply
|
708
696
|
end
|
697
|
+
|
709
698
|
end
|
710
699
|
|
711
700
|
describe "non-host catalogs" do
|
701
|
+
|
712
702
|
before do
|
713
703
|
@catalog.host_config = false
|
714
704
|
end
|
@@ -720,10 +710,11 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
720
710
|
end
|
721
711
|
|
722
712
|
it "should never modify the state database" do
|
723
|
-
|
724
|
-
|
713
|
+
Puppet::Util::Storage.expects(:load).never
|
714
|
+
Puppet::Util::Storage.expects(:store).never
|
725
715
|
@catalog.apply
|
726
716
|
end
|
717
|
+
|
727
718
|
end
|
728
719
|
end
|
729
720
|
|
@@ -733,7 +724,7 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
733
724
|
end
|
734
725
|
|
735
726
|
it "should get removed when the catalog is cleaned up" do
|
736
|
-
|
727
|
+
@catalog.relationship_graph.expects(:clear)
|
737
728
|
|
738
729
|
@catalog.clear
|
739
730
|
|
@@ -749,18 +740,19 @@ describe Puppet::Resource::Catalog, "when compiling" do
|
|
749
740
|
end
|
750
741
|
|
751
742
|
it "should only write when it is a host catalog" do
|
752
|
-
|
743
|
+
Puppet::FileSystem.expects(:open).with(@file, 0640, "w:UTF-8").never
|
753
744
|
@catalog.host_config = false
|
754
745
|
Puppet[:graph] = true
|
755
746
|
@catalog.write_graph(@name)
|
756
747
|
end
|
748
|
+
|
757
749
|
end
|
758
750
|
|
759
751
|
describe "when indirecting" do
|
760
752
|
before do
|
761
753
|
@real_indirection = Puppet::Resource::Catalog.indirection
|
762
754
|
|
763
|
-
@indirection =
|
755
|
+
@indirection = stub 'indirection', :name => :catalog
|
764
756
|
end
|
765
757
|
|
766
758
|
it "should use the value of the 'catalog_terminus' setting to determine its terminus class" do
|
@@ -885,6 +877,7 @@ describe Puppet::Resource::Catalog, "when converting a resource catalog to json"
|
|
885
877
|
Puppet.pop_context
|
886
878
|
end
|
887
879
|
|
880
|
+
|
888
881
|
let(:catalog_w_regexp) { compile_to_catalog("notify {'foo': message => /[a-z]+/ }") }
|
889
882
|
|
890
883
|
it 'should generate rich value hash for parameter values that are not Data' do
|
@@ -1019,7 +1012,9 @@ describe Puppet::Resource::Catalog, "when converting a resource catalog to json"
|
|
1019
1012
|
expect(message['a']).to eql(nil)
|
1020
1013
|
expect(message['b']).to eql(10)
|
1021
1014
|
end
|
1015
|
+
|
1022
1016
|
end
|
1017
|
+
|
1023
1018
|
end
|
1024
1019
|
end
|
1025
1020
|
|
@@ -1050,29 +1045,30 @@ describe Puppet::Resource::Catalog, "when converting to json" do
|
|
1050
1045
|
end
|
1051
1046
|
|
1052
1047
|
it "should convert its resources to a JSON-encoded array and store it as the 'resources' data" do
|
1053
|
-
one =
|
1054
|
-
two =
|
1048
|
+
one = stub 'one', :to_data_hash => "one_resource", :ref => "Foo[one]"
|
1049
|
+
two = stub 'two', :to_data_hash => "two_resource", :ref => "Foo[two]"
|
1055
1050
|
|
1056
|
-
|
1057
|
-
|
1051
|
+
one.expects(:'[]').with(:alias).returns nil
|
1052
|
+
two.expects(:'[]').with(:alias).returns nil
|
1058
1053
|
|
1059
1054
|
@catalog.add_resource(one)
|
1060
1055
|
@catalog.add_resource(two)
|
1061
1056
|
|
1062
1057
|
# TODO this should really guarantee sort order
|
1063
1058
|
expect(JSON.parse(@catalog.to_json,:create_additions => false)['resources'].sort).to eq(["one_resource", "two_resource"].sort)
|
1059
|
+
|
1064
1060
|
end
|
1065
1061
|
|
1066
1062
|
it "should convert its edges to a JSON-encoded array and store it as the 'edges' data" do
|
1067
|
-
one =
|
1068
|
-
two =
|
1069
|
-
three =
|
1063
|
+
one = stub 'one', :to_data_hash => "one_resource", :ref => 'Foo[one]'
|
1064
|
+
two = stub 'two', :to_data_hash => "two_resource", :ref => 'Foo[two]'
|
1065
|
+
three = stub 'three', :to_data_hash => "three_resource", :ref => 'Foo[three]'
|
1070
1066
|
|
1071
1067
|
@catalog.add_edge(one, two)
|
1072
1068
|
@catalog.add_edge(two, three)
|
1073
1069
|
|
1074
|
-
|
1075
|
-
|
1070
|
+
@catalog.edges_between(one, two )[0].expects(:to_data_hash).returns "one_two_json"
|
1071
|
+
@catalog.edges_between(two, three)[0].expects(:to_data_hash).returns "two_three_json"
|
1076
1072
|
|
1077
1073
|
expect(JSON.parse(@catalog.to_json,:create_additions => false)['edges'].sort).to eq(%w{one_two_json two_three_json}.sort)
|
1078
1074
|
end
|