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
|
|
3
4
|
require 'puppet/provider/ldap'
|
@@ -8,10 +9,10 @@ describe Puppet::Provider::Ldap do
|
|
8
9
|
end
|
9
10
|
|
10
11
|
it "should be able to define its manager" do
|
11
|
-
manager =
|
12
|
-
|
13
|
-
|
14
|
-
|
12
|
+
manager = mock 'manager'
|
13
|
+
Puppet::Util::Ldap::Manager.expects(:new).returns manager
|
14
|
+
@class.stubs :mk_resource_methods
|
15
|
+
manager.expects(:manages).with(:one)
|
15
16
|
expect(@class.manages(:one)).to equal(manager)
|
16
17
|
expect(@class.manager).to equal(manager)
|
17
18
|
end
|
@@ -21,10 +22,10 @@ describe Puppet::Provider::Ldap do
|
|
21
22
|
end
|
22
23
|
|
23
24
|
it "should create its resource getter/setter methods when the manager is defined" do
|
24
|
-
manager =
|
25
|
-
|
26
|
-
|
27
|
-
|
25
|
+
manager = mock 'manager'
|
26
|
+
Puppet::Util::Ldap::Manager.expects(:new).returns manager
|
27
|
+
@class.expects :mk_resource_methods
|
28
|
+
manager.stubs(:manages)
|
28
29
|
expect(@class.manages(:one)).to equal(manager)
|
29
30
|
end
|
30
31
|
|
@@ -34,14 +35,14 @@ describe Puppet::Provider::Ldap do
|
|
34
35
|
|
35
36
|
describe "when providing a list of instances" do
|
36
37
|
it "should convert all results returned from the manager's :search method into provider instances" do
|
37
|
-
manager =
|
38
|
-
|
38
|
+
manager = mock 'manager'
|
39
|
+
@class.stubs(:manager).returns manager
|
39
40
|
|
40
|
-
|
41
|
+
manager.expects(:search).returns %w{one two three}
|
41
42
|
|
42
|
-
|
43
|
-
|
44
|
-
|
43
|
+
@class.expects(:new).with("one").returns(1)
|
44
|
+
@class.expects(:new).with("two").returns(2)
|
45
|
+
@class.expects(:new).with("three").returns(3)
|
45
46
|
|
46
47
|
expect(@class.instances).to eq([1,2,3])
|
47
48
|
end
|
@@ -53,29 +54,29 @@ describe Puppet::Provider::Ldap do
|
|
53
54
|
|
54
55
|
describe "when prefetching" do
|
55
56
|
before do
|
56
|
-
@manager =
|
57
|
-
|
57
|
+
@manager = mock 'manager'
|
58
|
+
@class.stubs(:manager).returns @manager
|
58
59
|
|
59
|
-
@resource =
|
60
|
+
@resource = mock 'resource'
|
60
61
|
|
61
62
|
@resources = {"one" => @resource}
|
62
63
|
end
|
63
64
|
|
64
65
|
it "should find an entry for each passed resource" do
|
65
|
-
|
66
|
+
@manager.expects(:find).with("one").returns nil
|
66
67
|
|
67
|
-
|
68
|
-
|
68
|
+
@class.stubs(:new)
|
69
|
+
@resource.stubs(:provider=)
|
69
70
|
@class.prefetch(@resources)
|
70
71
|
end
|
71
72
|
|
72
73
|
describe "resources that do not exist" do
|
73
74
|
it "should create a provider with :ensure => :absent" do
|
74
|
-
|
75
|
+
@manager.expects(:find).with("one").returns nil
|
75
76
|
|
76
|
-
|
77
|
+
@class.expects(:new).with(:ensure => :absent).returns "myprovider"
|
77
78
|
|
78
|
-
|
79
|
+
@resource.expects(:provider=).with("myprovider")
|
79
80
|
|
80
81
|
@class.prefetch(@resources)
|
81
82
|
end
|
@@ -83,21 +84,21 @@ describe Puppet::Provider::Ldap do
|
|
83
84
|
|
84
85
|
describe "resources that exist" do
|
85
86
|
it "should create a provider with the results of the find" do
|
86
|
-
|
87
|
+
@manager.expects(:find).with("one").returns("one" => "two")
|
87
88
|
|
88
|
-
|
89
|
+
@class.expects(:new).with("one" => "two", :ensure => :present).returns "myprovider"
|
89
90
|
|
90
|
-
|
91
|
+
@resource.expects(:provider=).with("myprovider")
|
91
92
|
|
92
93
|
@class.prefetch(@resources)
|
93
94
|
end
|
94
95
|
|
95
96
|
it "should set :ensure to :present in the returned values" do
|
96
|
-
|
97
|
+
@manager.expects(:find).with("one").returns("one" => "two")
|
97
98
|
|
98
|
-
|
99
|
+
@class.expects(:new).with("one" => "two", :ensure => :present).returns "myprovider"
|
99
100
|
|
100
|
-
|
101
|
+
@resource.expects(:provider=).with("myprovider")
|
101
102
|
|
102
103
|
@class.prefetch(@resources)
|
103
104
|
end
|
@@ -110,22 +111,22 @@ describe Puppet::Provider::Ldap do
|
|
110
111
|
end
|
111
112
|
|
112
113
|
it "should fail if the manager is invalid" do
|
113
|
-
manager =
|
114
|
-
|
114
|
+
manager = stub "manager", :valid? => false
|
115
|
+
@class.stubs(:manager).returns manager
|
115
116
|
expect { @class.new }.to raise_error(Puppet::DevError)
|
116
117
|
end
|
117
118
|
|
118
119
|
describe "with a hash" do
|
119
120
|
before do
|
120
|
-
@manager =
|
121
|
-
|
121
|
+
@manager = stub "manager", :valid? => true
|
122
|
+
@class.stubs(:manager).returns @manager
|
122
123
|
|
123
|
-
@resource_class =
|
124
|
-
|
124
|
+
@resource_class = mock 'resource_class'
|
125
|
+
@class.stubs(:resource_type).returns @resource_class
|
125
126
|
|
126
|
-
@property_class =
|
127
|
-
|
128
|
-
|
127
|
+
@property_class = stub 'property_class', :array_matching => :all, :superclass => Puppet::Property
|
128
|
+
@resource_class.stubs(:attrclass).with(:one).returns(@property_class)
|
129
|
+
@resource_class.stubs(:valid_parameter?).returns true
|
129
130
|
end
|
130
131
|
|
131
132
|
it "should store a copy of the hash as its ldap_properties" do
|
@@ -134,29 +135,29 @@ describe Puppet::Provider::Ldap do
|
|
134
135
|
end
|
135
136
|
|
136
137
|
it "should only store the first value of each value array for those attributes that do not match all values" do
|
137
|
-
|
138
|
+
@property_class.expects(:array_matching).returns :first
|
138
139
|
instance = @class.new(:one => %w{two three})
|
139
140
|
expect(instance.properties).to eq({:one => "two"})
|
140
141
|
end
|
141
142
|
|
142
143
|
it "should store the whole value array for those attributes that match all values" do
|
143
|
-
|
144
|
+
@property_class.expects(:array_matching).returns :all
|
144
145
|
instance = @class.new(:one => %w{two three})
|
145
146
|
expect(instance.properties).to eq({:one => %w{two three}})
|
146
147
|
end
|
147
148
|
|
148
149
|
it "should only use the first value for attributes that are not properties" do
|
149
150
|
# Yay. hackish, but easier than mocking everything.
|
150
|
-
|
151
|
-
|
151
|
+
@resource_class.expects(:attrclass).with(:a).returns Puppet::Type.type(:user).attrclass(:name)
|
152
|
+
@property_class.stubs(:array_matching).returns :all
|
152
153
|
|
153
154
|
instance = @class.new(:one => %w{two three}, :a => %w{b c})
|
154
155
|
expect(instance.properties).to eq({:one => %w{two three}, :a => "b"})
|
155
156
|
end
|
156
157
|
|
157
158
|
it "should discard any properties not valid in the resource class" do
|
158
|
-
|
159
|
-
|
159
|
+
@resource_class.expects(:valid_parameter?).with(:a).returns false
|
160
|
+
@property_class.stubs(:array_matching).returns :all
|
160
161
|
|
161
162
|
instance = @class.new(:one => %w{two three}, :a => %w{b})
|
162
163
|
expect(instance.properties).to eq({:one => %w{two three}})
|
@@ -166,13 +167,13 @@ describe Puppet::Provider::Ldap do
|
|
166
167
|
|
167
168
|
describe "when an instance" do
|
168
169
|
before do
|
169
|
-
@manager =
|
170
|
-
|
170
|
+
@manager = stub "manager", :valid? => true
|
171
|
+
@class.stubs(:manager).returns @manager
|
171
172
|
@instance = @class.new
|
172
173
|
|
173
|
-
@property_class =
|
174
|
-
@resource_class =
|
175
|
-
|
174
|
+
@property_class = stub 'property_class', :array_matching => :all, :superclass => Puppet::Property
|
175
|
+
@resource_class = stub 'resource_class', :attrclass => @property_class, :valid_parameter? => true, :validproperties => [:one, :two]
|
176
|
+
@class.stubs(:resource_type).returns @resource_class
|
176
177
|
end
|
177
178
|
|
178
179
|
it "should have a method for creating the ldap entry" do
|
@@ -199,22 +200,22 @@ describe Puppet::Provider::Ldap do
|
|
199
200
|
|
200
201
|
describe "is being flushed" do
|
201
202
|
it "should call the manager's :update method with its name, current attributes, and desired attributes" do
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
203
|
+
@instance.stubs(:name).returns "myname"
|
204
|
+
@instance.stubs(:ldap_properties).returns(:one => :two)
|
205
|
+
@instance.stubs(:properties).returns(:three => :four)
|
206
|
+
@manager.expects(:update).with(@instance.name, {:one => :two}, {:three => :four})
|
206
207
|
@instance.flush
|
207
208
|
end
|
208
209
|
end
|
209
210
|
|
210
211
|
describe "is being created" do
|
211
212
|
before do
|
212
|
-
@rclass =
|
213
|
-
|
214
|
-
@resource =
|
215
|
-
|
216
|
-
|
217
|
-
|
213
|
+
@rclass = mock 'resource_class'
|
214
|
+
@rclass.stubs(:validproperties).returns([:one, :two])
|
215
|
+
@resource = mock 'resource'
|
216
|
+
@resource.stubs(:class).returns @rclass
|
217
|
+
@resource.stubs(:should).returns nil
|
218
|
+
@instance.stubs(:resource).returns @resource
|
218
219
|
end
|
219
220
|
|
220
221
|
it "should set its :ensure value to :present" do
|
@@ -223,8 +224,8 @@ describe Puppet::Provider::Ldap do
|
|
223
224
|
end
|
224
225
|
|
225
226
|
it "should set all of the other attributes from the resource" do
|
226
|
-
|
227
|
-
|
227
|
+
@resource.expects(:should).with(:one).returns "oneval"
|
228
|
+
@resource.expects(:should).with(:two).returns "twoval"
|
228
229
|
|
229
230
|
@instance.create
|
230
231
|
expect(@instance.properties[:one]).to eq("oneval")
|
@@ -7,8 +7,8 @@ end
|
|
7
7
|
[:group].each do |type_for_this_round|
|
8
8
|
describe Puppet::Type.type(type_for_this_round).provider(:directoryservice) do
|
9
9
|
before do
|
10
|
-
@resource =
|
11
|
-
|
10
|
+
@resource = stub("resource")
|
11
|
+
@resource.stubs(:[]).with(:name)
|
12
12
|
@provider = described_class.new(@resource)
|
13
13
|
end
|
14
14
|
|
@@ -17,18 +17,18 @@ end
|
|
17
17
|
desired = ["foo", ["quux"], "qorp"]
|
18
18
|
group = 'example'
|
19
19
|
|
20
|
-
|
21
|
-
|
20
|
+
@resource.stubs(:[]).with(:name).returns(group)
|
21
|
+
@resource.stubs(:[]).with(:auth_membership).returns(true)
|
22
22
|
@provider.instance_variable_set(:@property_value_cache_hash,
|
23
23
|
{ :members => current })
|
24
24
|
|
25
25
|
%w{bar baz}.each do |del|
|
26
|
-
|
26
|
+
@provider.expects(:execute).once.
|
27
27
|
with([:dseditgroup, '-o', 'edit', '-n', '.', '-d', del, group])
|
28
28
|
end
|
29
29
|
|
30
30
|
%w{quux qorp}.each do |add|
|
31
|
-
|
31
|
+
@provider.expects(:execute).once.
|
32
32
|
with([:dseditgroup, '-o', 'edit', '-n', '.', '-a', add, group])
|
33
33
|
end
|
34
34
|
|
@@ -40,13 +40,13 @@ end
|
|
40
40
|
describe Puppet::Provider::NameService::DirectoryService do
|
41
41
|
context '.single_report' do
|
42
42
|
it 'should use plist data' do
|
43
|
-
|
44
|
-
|
43
|
+
Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
|
44
|
+
Puppet::Provider::NameService::DirectoryService.stubs(:list_all_present).returns(
|
45
45
|
['root', 'user1', 'user2', 'resource_name']
|
46
46
|
)
|
47
|
-
|
48
|
-
|
49
|
-
|
47
|
+
Puppet::Provider::NameService::DirectoryService.stubs(:generate_attribute_hash)
|
48
|
+
Puppet::Provider::NameService::DirectoryService.stubs(:execute)
|
49
|
+
Puppet::Provider::NameService::DirectoryService.expects(:parse_dscl_plist_data)
|
50
50
|
|
51
51
|
Puppet::Provider::NameService::DirectoryService.single_report('resource_name')
|
52
52
|
end
|
@@ -54,7 +54,7 @@ describe Puppet::Provider::NameService::DirectoryService do
|
|
54
54
|
|
55
55
|
context '.get_exec_preamble' do
|
56
56
|
it 'should use plist data' do
|
57
|
-
|
57
|
+
Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
|
58
58
|
|
59
59
|
expect(Puppet::Provider::NameService::DirectoryService.get_exec_preamble('-list')).to include("-plist")
|
60
60
|
end
|
@@ -85,9 +85,9 @@ describe Puppet::Provider::NameService::DirectoryService do
|
|
85
85
|
end
|
86
86
|
|
87
87
|
it 'should execute convert_binary_to_hash once when getting the password' do
|
88
|
-
|
89
|
-
|
90
|
-
|
88
|
+
described_class.expects(:convert_binary_to_hash).returns({'SALTED-SHA512' => pw_string})
|
89
|
+
Puppet::FileSystem.expects(:exist?).with(plist_path).once.returns(true)
|
90
|
+
Puppet::Util::Plist.expects(:read_plist_file).returns(shadow_hash_data)
|
91
91
|
described_class.get_password('uid', 'jeff')
|
92
92
|
end
|
93
93
|
|
@@ -98,19 +98,19 @@ describe Puppet::Provider::NameService::DirectoryService do
|
|
98
98
|
end
|
99
99
|
|
100
100
|
it 'should convert xml-to-binary and binary-to-xml when setting the pw on >= 10.7' do
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
101
|
+
described_class.expects(:convert_binary_to_hash).returns({'SALTED-SHA512' => pw_string})
|
102
|
+
described_class.expects(:convert_hash_to_binary).returns(binary_plist)
|
103
|
+
Puppet::FileSystem.expects(:exist?).with(plist_path).once.returns(true)
|
104
|
+
Puppet::Util::Plist.expects(:read_plist_file).returns(shadow_hash_data)
|
105
|
+
Puppet::Util::Plist.expects(:write_plist_file).with(shadow_hash_data, plist_path, :binary)
|
106
106
|
described_class.set_password('jeff', 'uid', sha512_hash)
|
107
107
|
end
|
108
108
|
|
109
109
|
it '[#13686] should handle an empty ShadowHashData field in the users plist' do
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
110
|
+
described_class.expects(:convert_hash_to_binary).returns(binary_plist)
|
111
|
+
Puppet::FileSystem.expects(:exist?).with(plist_path).once.returns(true)
|
112
|
+
Puppet::Util::Plist.expects(:read_plist_file).returns({'ShadowHashData' => nil})
|
113
|
+
Puppet::Util::Plist.expects(:write_plist_file)
|
114
114
|
described_class.set_password('jeff', 'uid', sha512_hash)
|
115
115
|
end
|
116
116
|
end
|
@@ -129,7 +129,7 @@ describe Puppet::Provider::NameService::DirectoryService do
|
|
129
129
|
end
|
130
130
|
|
131
131
|
let :stub_resource do
|
132
|
-
|
132
|
+
stub('resource')
|
133
133
|
end
|
134
134
|
|
135
135
|
subject do
|
@@ -137,20 +137,21 @@ describe Puppet::Provider::NameService::DirectoryService do
|
|
137
137
|
end
|
138
138
|
|
139
139
|
before :each do
|
140
|
-
@resource =
|
141
|
-
|
140
|
+
@resource = stub("resource")
|
141
|
+
@resource.stubs(:[]).with(:name)
|
142
142
|
@provider = provider_class.new(@resource)
|
143
143
|
end
|
144
144
|
|
145
145
|
it 'should delete a group member if the user does not exist' do
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
146
|
+
stub_resource.stubs(:[]).with(:name).returns('fake_group')
|
147
|
+
stub_resource.stubs(:name).returns('fake_group')
|
148
|
+
subject.expects(:execute).with([:dseditgroup, '-o', 'edit', '-n', '.',
|
149
|
+
'-d', 'jeff',
|
150
|
+
'fake_group']).raises(Puppet::ExecutionFailure,
|
151
|
+
'it broke')
|
152
|
+
subject.expects(:execute).with([:dscl, '.', '-delete',
|
153
|
+
'/Groups/fake_group', 'GroupMembership',
|
154
|
+
'jeff'])
|
154
155
|
subject.remove_unwanted_members(group_members, user_account)
|
155
156
|
end
|
156
157
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
|
1
3
|
require 'spec_helper'
|
2
4
|
require 'puppet/provider/nameservice'
|
3
5
|
require 'puppet/etc'
|
@@ -132,7 +134,7 @@ describe Puppet::Provider::NameService do
|
|
132
134
|
|
133
135
|
describe "#section" do
|
134
136
|
it "should raise an error if resource_type has not been set" do
|
135
|
-
|
137
|
+
described_class.expects(:resource_type).returns nil
|
136
138
|
expect { described_class.section }.to raise_error Puppet::Error, 'Cannot determine Etc section without a resource type'
|
137
139
|
end
|
138
140
|
|
@@ -151,15 +153,15 @@ describe Puppet::Provider::NameService do
|
|
151
153
|
|
152
154
|
describe "#listbyname" do
|
153
155
|
it "should be deprecated" do
|
154
|
-
|
156
|
+
Puppet.expects(:deprecation_warning).with(regexp_matches(/listbyname is deprecated/))
|
155
157
|
described_class.listbyname
|
156
158
|
end
|
157
159
|
|
158
160
|
it "should return a list of users if resource_type is user" do
|
159
161
|
described_class.resource_type = Puppet::Type.type(:user)
|
160
|
-
|
161
|
-
|
162
|
-
|
162
|
+
Puppet::Etc.expects(:setpwent)
|
163
|
+
Puppet::Etc.stubs(:getpwent).returns(*users)
|
164
|
+
Puppet::Etc.expects(:endpwent)
|
163
165
|
expect(described_class.listbyname).to eq(%w{root foo})
|
164
166
|
end
|
165
167
|
|
@@ -170,7 +172,7 @@ describe Puppet::Provider::NameService do
|
|
170
172
|
# the same name on disk, but each name is stored on disk in a different
|
171
173
|
# encoding
|
172
174
|
it "should return names with invalid byte sequences replaced with '?'" do
|
173
|
-
|
175
|
+
Etc.stubs(:getpwent).returns(*utf_8_mixed_users)
|
174
176
|
expect(invalid_utf_8_jose).to_not be_valid_encoding
|
175
177
|
result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::UTF_8) do
|
176
178
|
described_class.listbyname
|
@@ -179,7 +181,7 @@ describe Puppet::Provider::NameService do
|
|
179
181
|
end
|
180
182
|
|
181
183
|
it "should return names in their original encoding/bytes if they would not be valid UTF-8" do
|
182
|
-
|
184
|
+
Etc.stubs(:getpwent).returns(*latin_1_mixed_users)
|
183
185
|
result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::ISO_8859_1) do
|
184
186
|
described_class.listbyname
|
185
187
|
end
|
@@ -189,18 +191,18 @@ describe Puppet::Provider::NameService do
|
|
189
191
|
|
190
192
|
it "should return a list of groups if resource_type is group", :unless => Puppet::Util::Platform.windows? do
|
191
193
|
described_class.resource_type = Puppet::Type.type(:group)
|
192
|
-
|
193
|
-
|
194
|
-
|
194
|
+
Puppet::Etc.expects(:setgrent)
|
195
|
+
Puppet::Etc.stubs(:getgrent).returns(*groups)
|
196
|
+
Puppet::Etc.expects(:endgrent)
|
195
197
|
expect(described_class.listbyname).to eq(%w{root bin})
|
196
198
|
end
|
197
199
|
|
198
200
|
it "should yield if a block given" do
|
199
201
|
yield_results = []
|
200
202
|
described_class.resource_type = Puppet::Type.type(:user)
|
201
|
-
|
202
|
-
|
203
|
-
|
203
|
+
Puppet::Etc.expects(:setpwent)
|
204
|
+
Puppet::Etc.stubs(:getpwent).returns(*users)
|
205
|
+
Puppet::Etc.expects(:endpwent)
|
204
206
|
described_class.listbyname {|x| yield_results << x }
|
205
207
|
expect(yield_results).to eq(%w{root foo})
|
206
208
|
end
|
@@ -211,7 +213,7 @@ describe Puppet::Provider::NameService do
|
|
211
213
|
# These two tests simulate an environment where there are two users with
|
212
214
|
# the same name on disk, but each name is stored on disk in a different
|
213
215
|
# encoding
|
214
|
-
|
216
|
+
Etc.stubs(:getpwent).returns(*utf_8_mixed_users)
|
215
217
|
result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::UTF_8) do
|
216
218
|
described_class.instances
|
217
219
|
end
|
@@ -226,7 +228,7 @@ describe Puppet::Provider::NameService do
|
|
226
228
|
end
|
227
229
|
|
228
230
|
it "should have object names in their original encoding/bytes if they would not be valid UTF-8" do
|
229
|
-
|
231
|
+
Etc.stubs(:getpwent).returns(*latin_1_mixed_users)
|
230
232
|
result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::ISO_8859_1) do
|
231
233
|
described_class.instances
|
232
234
|
end
|
@@ -242,8 +244,8 @@ describe Puppet::Provider::NameService do
|
|
242
244
|
|
243
245
|
it "should pass the Puppet::Etc :canonical_name Struct member to the constructor" do
|
244
246
|
users = [ Struct::Passwd.new(invalid_utf_8_jose, invalid_utf_8_jose, 1002, 2000), nil ]
|
245
|
-
|
246
|
-
|
247
|
+
Etc.stubs(:getpwent).returns(*users)
|
248
|
+
described_class.expects(:new).with(:name => escaped_utf_8_jose, :canonical_name => invalid_utf_8_jose, :ensure => :present)
|
247
249
|
described_class.instances
|
248
250
|
end
|
249
251
|
end
|
@@ -276,19 +278,19 @@ describe Puppet::Provider::NameService do
|
|
276
278
|
describe "getinfo" do
|
277
279
|
before :each do
|
278
280
|
# with section=foo we'll call Etc.getfoonam instead of getpwnam or getgrnam
|
279
|
-
|
281
|
+
described_class.stubs(:section).returns 'foo'
|
280
282
|
resource # initialize the resource so our provider has a @resource instance variable
|
281
283
|
end
|
282
284
|
|
283
285
|
it "should return a hash if we can retrieve something" do
|
284
|
-
|
285
|
-
|
286
|
+
Puppet::Etc.expects(:send).with(:getfoonam, 'bob').returns fakeetcobject
|
287
|
+
provider.expects(:info2hash).with(fakeetcobject).returns(:foo => 'fooval', :bar => 'barval')
|
286
288
|
expect(provider.getinfo(true)).to eq({:foo => 'fooval', :bar => 'barval'})
|
287
289
|
end
|
288
290
|
|
289
291
|
it "should return nil if we cannot retrieve anything" do
|
290
|
-
|
291
|
-
|
292
|
+
Puppet::Etc.expects(:send).with(:getfoonam, 'bob').raises(ArgumentError, "can't find bob")
|
293
|
+
provider.expects(:info2hash).never
|
292
294
|
expect(provider.getinfo(true)).to be_nil
|
293
295
|
end
|
294
296
|
|
@@ -297,13 +299,13 @@ describe Puppet::Provider::NameService do
|
|
297
299
|
# again if needed
|
298
300
|
it "should use the instance's @canonical_name to query the system" do
|
299
301
|
provider_instance = described_class.new(:name => 'foo', :canonical_name => 'original_foo', :ensure => :present)
|
300
|
-
|
302
|
+
Puppet::Etc.expects(:send).with(:getfoonam, 'original_foo')
|
301
303
|
provider_instance.getinfo(true)
|
302
304
|
end
|
303
305
|
|
304
306
|
it "should use the instance's name instead of canonical_name if not supplied during instantiation" do
|
305
307
|
provider_instance = described_class.new(:name => 'foo', :ensure => :present)
|
306
|
-
|
308
|
+
Puppet::Etc.expects(:send).with(:getfoonam, 'foo')
|
307
309
|
provider_instance.getinfo(true)
|
308
310
|
end
|
309
311
|
end
|
@@ -317,9 +319,9 @@ describe Puppet::Provider::NameService do
|
|
317
319
|
# expect two method invocations because info2hash calls the method
|
318
320
|
# twice if the Struct responds to the propertyname (our fake Struct
|
319
321
|
# provides values for :foo and :bar) TODO: Fix that
|
320
|
-
|
321
|
-
|
322
|
-
|
322
|
+
provider.expects(:posixmethod).with(:foo).returns(:foo).twice
|
323
|
+
provider.expects(:posixmethod).with(:bar).returns(:bar).twice
|
324
|
+
provider.expects(:posixmethod).with(:ensure).returns :ensure
|
323
325
|
expect(provider.info2hash(fakeetcobject)).to eq({ :foo => 'fooval', :bar => 'barval' })
|
324
326
|
end
|
325
327
|
end
|
@@ -349,11 +351,11 @@ describe Puppet::Provider::NameService do
|
|
349
351
|
|
350
352
|
describe "exists?" do
|
351
353
|
it "should return true if we can retrieve anything" do
|
352
|
-
|
354
|
+
provider.expects(:getinfo).with(true).returns(:foo => 'fooval', :bar => 'barval')
|
353
355
|
expect(provider).to be_exists
|
354
356
|
end
|
355
357
|
it "should return false if we cannot retrieve anything" do
|
356
|
-
|
358
|
+
provider.expects(:getinfo).with(true).returns nil
|
357
359
|
expect(provider).not_to be_exists
|
358
360
|
end
|
359
361
|
end
|
@@ -362,18 +364,18 @@ describe Puppet::Provider::NameService do
|
|
362
364
|
before(:each) {described_class.resource_type = faketype }
|
363
365
|
|
364
366
|
it "should return the correct getinfo value" do
|
365
|
-
|
367
|
+
provider.expects(:getinfo).with(false).returns(:foo => 'fooval', :bar => 'barval')
|
366
368
|
expect(provider.get(:bar)).to eq('barval')
|
367
369
|
end
|
368
370
|
|
369
371
|
it "should unmunge the value first" do
|
370
372
|
described_class.options(:bar, :munge => proc { |x| x*2}, :unmunge => proc {|x| x/2})
|
371
|
-
|
373
|
+
provider.expects(:getinfo).with(false).returns(:foo => 200, :bar => 500)
|
372
374
|
expect(provider.get(:bar)).to eq(250)
|
373
375
|
end
|
374
376
|
|
375
377
|
it "should return nil if getinfo cannot retrieve the value" do
|
376
|
-
|
378
|
+
provider.expects(:getinfo).with(false).returns(:foo => 'fooval', :bar => 'barval')
|
377
379
|
expect(provider.get(:no_such_key)).to be_nil
|
378
380
|
end
|
379
381
|
|
@@ -390,21 +392,21 @@ describe Puppet::Provider::NameService do
|
|
390
392
|
end
|
391
393
|
|
392
394
|
it "should execute the modify command on valid values" do
|
393
|
-
|
394
|
-
|
395
|
+
provider.expects(:modifycmd).with(:foo, 100).returns ['/bin/modify', '-f', '100' ]
|
396
|
+
provider.expects(:execute).with(['/bin/modify', '-f', '100'], has_entry(:custom_environment, {}))
|
395
397
|
provider.set(:foo, 100)
|
396
398
|
end
|
397
399
|
|
398
400
|
it "should munge the value first" do
|
399
401
|
described_class.options(:foo, :munge => proc { |x| x*2}, :unmunge => proc {|x| x/2})
|
400
|
-
|
401
|
-
|
402
|
+
provider.expects(:modifycmd).with(:foo, 200).returns(['/bin/modify', '-f', '200' ])
|
403
|
+
provider.expects(:execute).with(['/bin/modify', '-f', '200'], has_entry(:custom_environment, {}))
|
402
404
|
provider.set(:foo, 100)
|
403
405
|
end
|
404
406
|
|
405
407
|
it "should fail if the modify command fails" do
|
406
|
-
|
407
|
-
|
408
|
+
provider.expects(:modifycmd).with(:foo, 100).returns(['/bin/modify', '-f', '100' ])
|
409
|
+
provider.expects(:execute).with(['/bin/modify', '-f', '100'], kind_of(Hash)).raises(Puppet::ExecutionFailure, "Execution of '/bin/modify' returned 1: some_failure")
|
408
410
|
expect { provider.set(:foo, 100) }.to raise_error Puppet::Error, /Could not set foo/
|
409
411
|
end
|
410
412
|
end
|