puppet 6.0.10-x86-mingw32 → 6.1.0-x86-mingw32
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,7 +1,9 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/util/monkey_patches'
|
4
5
|
|
6
|
+
|
5
7
|
describe Symbol do
|
6
8
|
after :all do
|
7
9
|
$unique_warnings.delete('symbol_comparison') if $unique_warnings
|
@@ -52,7 +54,7 @@ describe OpenSSL::SSL::SSLContext do
|
|
52
54
|
end
|
53
55
|
|
54
56
|
it 'sets parameters on initialization' do
|
55
|
-
|
57
|
+
described_class.any_instance.expects(:set_params)
|
56
58
|
subject
|
57
59
|
end
|
58
60
|
|
@@ -71,7 +73,7 @@ describe OpenSSL::X509::Store, :if => Puppet::Util::Platform.windows? do
|
|
71
73
|
let(:samecert) { cert.dup() }
|
72
74
|
|
73
75
|
def with_root_certs(certs)
|
74
|
-
|
76
|
+
Puppet::Util::Windows::RootCerts.expects(:instance).returns(certs)
|
75
77
|
end
|
76
78
|
|
77
79
|
it "adds a root cert to the store" do
|
@@ -82,7 +84,7 @@ describe OpenSSL::X509::Store, :if => Puppet::Util::Platform.windows? do
|
|
82
84
|
|
83
85
|
it "doesn't warn when calling set_default_paths multiple times" do
|
84
86
|
with_root_certs([cert])
|
85
|
-
|
87
|
+
store.expects(:warn).never
|
86
88
|
|
87
89
|
store.set_default_paths
|
88
90
|
store.set_default_paths
|
@@ -93,8 +95,8 @@ describe OpenSSL::X509::Store, :if => Puppet::Util::Platform.windows? do
|
|
93
95
|
expect(cert.hash).to_not eq(samecert.hash)
|
94
96
|
with_root_certs([cert, samecert])
|
95
97
|
|
96
|
-
|
97
|
-
|
98
|
+
store.expects(:add_cert).with(cert).once
|
99
|
+
store.expects(:add_cert).with(samecert).never
|
98
100
|
|
99
101
|
store.set_default_paths
|
100
102
|
end
|
@@ -106,7 +108,7 @@ describe OpenSSL::X509::Store, :if => Puppet::Util::Platform.windows? do
|
|
106
108
|
with_root_certs([cert])
|
107
109
|
store.add_cert(cert)
|
108
110
|
|
109
|
-
|
111
|
+
store.expects(:warn).with('Failed to add /DC=com/DC=microsoft/CN=Microsoft Root Certificate Authority')
|
110
112
|
|
111
113
|
store.set_default_paths
|
112
114
|
end
|
@@ -115,7 +117,7 @@ describe OpenSSL::X509::Store, :if => Puppet::Util::Platform.windows? do
|
|
115
117
|
with_root_certs([cert])
|
116
118
|
store.add_cert(cert)
|
117
119
|
|
118
|
-
|
120
|
+
store.expects(:warn).never
|
119
121
|
|
120
122
|
store.set_default_paths
|
121
123
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/util/network_device/transport/base'
|
@@ -12,28 +13,28 @@ describe Puppet::Util::NetworkDevice::Transport::Base do
|
|
12
13
|
|
13
14
|
describe "when sending commands" do
|
14
15
|
it "should send the command to the telnet session" do
|
15
|
-
|
16
|
+
@transport.expects(:send).with("line")
|
16
17
|
@transport.command("line")
|
17
18
|
end
|
18
19
|
|
19
20
|
it "should expect an output matching the given prompt" do
|
20
|
-
|
21
|
+
@transport.expects(:expect).with(/prompt/)
|
21
22
|
@transport.command("line", :prompt => /prompt/)
|
22
23
|
end
|
23
24
|
|
24
25
|
it "should expect an output matching the default prompt" do
|
25
26
|
@transport.default_prompt = /defprompt/
|
26
|
-
|
27
|
+
@transport.expects(:expect).with(/defprompt/)
|
27
28
|
@transport.command("line")
|
28
29
|
end
|
29
30
|
|
30
31
|
it "should yield telnet output to the given block" do
|
31
|
-
|
32
|
+
@transport.expects(:expect).yields("output")
|
32
33
|
@transport.command("line") { |out| expect(out).to eq("output") }
|
33
34
|
end
|
34
35
|
|
35
36
|
it "should return telnet output to the caller" do
|
36
|
-
|
37
|
+
@transport.expects(:expect).returns("output")
|
37
38
|
expect(@transport.command("line")).to eq("output")
|
38
39
|
end
|
39
40
|
end
|
@@ -1,9 +1,11 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'ostruct'
|
4
5
|
require 'puppet/util/network_device'
|
5
6
|
|
6
7
|
describe Puppet::Util::NetworkDevice do
|
8
|
+
|
7
9
|
before(:each) do
|
8
10
|
@device = OpenStruct.new(:name => "name", :provider => "test", :url => "telnet://admin:password@127.0.0.1", :options => { :debug => false })
|
9
11
|
end
|
@@ -21,25 +23,25 @@ describe Puppet::Util::NetworkDevice do
|
|
21
23
|
|
22
24
|
describe "when initializing the remote network device singleton" do
|
23
25
|
it "should load the network device code" do
|
24
|
-
|
26
|
+
Puppet::Util::NetworkDevice.expects(:require)
|
25
27
|
Puppet::Util::NetworkDevice.init(@device)
|
26
28
|
end
|
27
29
|
|
28
30
|
it "should create a network device instance" do
|
29
|
-
|
30
|
-
|
31
|
+
Puppet::Util::NetworkDevice.stubs(:require)
|
32
|
+
Puppet::Util::NetworkDevice::Test::Device.expects(:new).with("telnet://admin:password@127.0.0.1", :debug => false)
|
31
33
|
Puppet::Util::NetworkDevice.init(@device)
|
32
34
|
end
|
33
35
|
|
34
36
|
it "should raise an error if the remote device instance can't be created" do
|
35
|
-
|
37
|
+
Puppet::Util::NetworkDevice.stubs(:require).raises("error")
|
36
38
|
expect { Puppet::Util::NetworkDevice.init(@device) }.to raise_error(RuntimeError, /Can't load test for name/)
|
37
39
|
end
|
38
40
|
|
39
41
|
it "should let caller to access the singleton device" do
|
40
|
-
device =
|
41
|
-
|
42
|
-
|
42
|
+
device = stub 'device'
|
43
|
+
Puppet::Util::NetworkDevice.stubs(:require)
|
44
|
+
Puppet::Util::NetworkDevice::Test::Device.expects(:new).returns(device)
|
43
45
|
Puppet::Util::NetworkDevice.init(@device)
|
44
46
|
|
45
47
|
expect(Puppet::Util::NetworkDevice.current).to eq(device)
|
@@ -1,8 +1,9 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/util/pidlock'
|
4
5
|
|
5
|
-
describe Puppet::Util::Pidlock
|
6
|
+
describe Puppet::Util::Pidlock do
|
6
7
|
require 'puppet_spec/files'
|
7
8
|
include PuppetSpec::Files
|
8
9
|
|
@@ -22,23 +23,6 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
22
23
|
|
23
24
|
it "should become locked" do
|
24
25
|
@lock.lock
|
25
|
-
if Puppet::Util::Platform.windows?
|
26
|
-
allow(Puppet::Util::Windows::Process).to receive(:get_process_image_name_by_pid).with(@lock.lock_pid).and_return('C:\Program Files\Puppet Labs\Puppet\puppet\bin\ruby.exe')
|
27
|
-
else
|
28
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'comm=']).and_return('puppet')
|
29
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'args=']).and_return('puppet')
|
30
|
-
end
|
31
|
-
expect(@lock).to be_locked
|
32
|
-
end
|
33
|
-
|
34
|
-
it "should become locked if puppet is a gem" do
|
35
|
-
@lock.lock
|
36
|
-
unless Puppet::Util::Platform.windows?
|
37
|
-
expect(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'comm=']).and_return('ruby')
|
38
|
-
expect(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'args=']).and_return('ruby /root/puppet/.bundle/ruby/2.3.0/bin/puppet agent --no-daemonize -v')
|
39
|
-
else
|
40
|
-
allow(Puppet::Util::Windows::Process).to receive(:get_process_image_name_by_pid).with(@lock.lock_pid).and_return('C:\tools\ruby25\bin\ruby.exe')
|
41
|
-
end
|
42
26
|
expect(@lock).to be_locked
|
43
27
|
end
|
44
28
|
|
@@ -67,7 +51,7 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
67
51
|
end
|
68
52
|
|
69
53
|
it 'should create an empty lock file even when pid is missing' do
|
70
|
-
|
54
|
+
Process.stubs(:pid).returns('')
|
71
55
|
@lock.lock
|
72
56
|
expect(Puppet::FileSystem.exist?(@lock.file_path)).to be_truthy
|
73
57
|
expect(Puppet::FileSystem.read(@lock.file_path)).to be_empty
|
@@ -75,12 +59,12 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
75
59
|
|
76
60
|
it 'should replace an existing empty lockfile with a pid, given a subsequent lock call made against a valid pid' do
|
77
61
|
# empty pid results in empty lockfile
|
78
|
-
|
62
|
+
Process.stubs(:pid).returns('')
|
79
63
|
@lock.lock
|
80
64
|
expect(Puppet::FileSystem.exist?(@lock.file_path)).to be_truthy
|
81
65
|
|
82
66
|
# next lock call with valid pid kills existing empty lockfile
|
83
|
-
|
67
|
+
Process.stubs(:pid).returns(1234)
|
84
68
|
@lock.lock
|
85
69
|
expect(Puppet::FileSystem.exist?(@lock.file_path)).to be_truthy
|
86
70
|
expect(Puppet::FileSystem.read(@lock.file_path)).to eq('1234')
|
@@ -117,28 +101,11 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
117
101
|
describe "#locked?" do
|
118
102
|
it "should return true if locked" do
|
119
103
|
@lock.lock
|
120
|
-
if Puppet::Util::Platform.windows?
|
121
|
-
allow(Puppet::Util::Windows::Process).to receive(:get_process_image_name_by_pid).with(@lock.lock_pid).and_return('C:\Program Files\Puppet Labs\Puppet\puppet\bin\ruby.exe')
|
122
|
-
else
|
123
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'comm=']).and_return('puppet')
|
124
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'args=']).and_return('puppet')
|
125
|
-
end
|
126
|
-
expect(@lock).to be_locked
|
127
|
-
end
|
128
|
-
|
129
|
-
it "should return true if locked when puppet as gem" do
|
130
|
-
@lock.lock
|
131
|
-
unless Puppet::Util::Platform.windows?
|
132
|
-
expect(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'comm=']).and_return('ruby')
|
133
|
-
expect(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', @lock.lock_pid, '-o', 'args=']).and_return('ruby /root/puppet/.bundle/ruby/2.3.0/bin/puppet agent --no-daemonize -v')
|
134
|
-
else
|
135
|
-
allow(Puppet::Util::Windows::Process).to receive(:get_process_image_name_by_pid).with(@lock.lock_pid).and_return('C:\tools\ruby25\bin\ruby.exe')
|
136
|
-
end
|
137
104
|
expect(@lock).to be_locked
|
138
105
|
end
|
139
106
|
|
140
107
|
it "should remove the lockfile when pid is missing" do
|
141
|
-
|
108
|
+
Process.stubs(:pid).returns('')
|
142
109
|
@lock.lock
|
143
110
|
expect(@lock.locked?).to be_falsey
|
144
111
|
expect(Puppet::FileSystem.exist?(@lock.file_path)).to be_falsey
|
@@ -148,7 +115,7 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
148
115
|
describe '#lock_pid' do
|
149
116
|
it 'should return nil if the pid is empty' do
|
150
117
|
# fake pid to get empty lockfile
|
151
|
-
|
118
|
+
Process.stubs(:pid).returns('')
|
152
119
|
@lock.lock
|
153
120
|
expect(@lock.lock_pid).to eq(nil)
|
154
121
|
end
|
@@ -157,15 +124,15 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
157
124
|
describe "with a stale lock" do
|
158
125
|
before(:each) do
|
159
126
|
# fake our pid to be 1234
|
160
|
-
|
127
|
+
Process.stubs(:pid).returns(1234)
|
161
128
|
# lock the file
|
162
129
|
@lock.lock
|
163
130
|
# fake our pid to be a different pid, to simulate someone else
|
164
131
|
# holding the lock
|
165
|
-
|
132
|
+
Process.stubs(:pid).returns(6789)
|
166
133
|
|
167
|
-
|
168
|
-
|
134
|
+
Process.stubs(:kill).with(0, 6789)
|
135
|
+
Process.stubs(:kill).with(0, 1234).raises(Errno::ESRCH)
|
169
136
|
end
|
170
137
|
|
171
138
|
it "should not be locked" do
|
@@ -179,12 +146,6 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
179
146
|
end
|
180
147
|
|
181
148
|
it "should replace with new locks" do
|
182
|
-
if Puppet::Util::Platform.windows?
|
183
|
-
allow(Puppet::Util::Windows::Process).to receive(:get_process_image_name_by_pid).with(6789).and_return('C:\Program Files\Puppet Labs\Puppet\puppet\bin\ruby.exe')
|
184
|
-
else
|
185
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', 6789, '-o', 'comm=']).and_return('puppet')
|
186
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', 6789, '-o', 'args=']).and_return('puppet')
|
187
|
-
end
|
188
149
|
@lock.lock
|
189
150
|
expect(Puppet::FileSystem.exist?(@lockfile)).to be_truthy
|
190
151
|
expect(@lock.lock_pid).to eq(6789)
|
@@ -208,21 +169,15 @@ describe Puppet::Util::Pidlock, if: !Puppet::Util::Platform.jruby? do
|
|
208
169
|
describe "with another process lock" do
|
209
170
|
before(:each) do
|
210
171
|
# fake our pid to be 1234
|
211
|
-
|
212
|
-
if Puppet::Util::Platform.windows?
|
213
|
-
allow(Puppet::Util::Windows::Process).to receive(:get_process_image_name_by_pid).with(1234).and_return('C:\Program Files\Puppet Labs\Puppet\puppet\bin\ruby.exe')
|
214
|
-
else
|
215
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', 1234, '-o', 'comm=']).and_return('puppet')
|
216
|
-
allow(Puppet::Util::Execution).to receive(:execute).with(['ps', '-p', 1234, '-o', 'args=']).and_return('puppet')
|
217
|
-
end
|
172
|
+
Process.stubs(:pid).returns(1234)
|
218
173
|
# lock the file
|
219
174
|
@lock.lock
|
220
175
|
# fake our pid to be a different pid, to simulate someone else
|
221
176
|
# holding the lock
|
222
|
-
|
177
|
+
Process.stubs(:pid).returns(6789)
|
223
178
|
|
224
|
-
|
225
|
-
|
179
|
+
Process.stubs(:kill).with(0, 6789)
|
180
|
+
Process.stubs(:kill).with(0, 1234)
|
226
181
|
end
|
227
182
|
|
228
183
|
it "should be locked" do
|
@@ -69,60 +69,55 @@ describe Puppet::Util::Plist, :if => Puppet.features.cfpropertylist? do
|
|
69
69
|
|
70
70
|
describe "#read_plist_file" do
|
71
71
|
it "calls #convert_cfpropertylist_to_native_types on a plist object when a valid binary plist is read" do
|
72
|
-
|
73
|
-
|
74
|
-
|
72
|
+
subject.stubs(:read_file_with_offset).with(plist_path, 8).returns(binary_plist_magic_number)
|
73
|
+
subject.stubs(:new_cfpropertylist).with({:file => plist_path}).returns('plist_object')
|
74
|
+
subject.expects(:convert_cfpropertylist_to_native_types).with('plist_object').returns('plist_hash')
|
75
75
|
expect(subject.read_plist_file(plist_path)).to eq('plist_hash')
|
76
76
|
end
|
77
|
-
|
78
77
|
it "returns a valid hash when a valid XML plist is read" do
|
79
|
-
|
80
|
-
|
78
|
+
subject.stubs(:read_file_with_offset).with(plist_path, 8).returns('notbinary')
|
79
|
+
subject.stubs(:open_file_with_args).with(plist_path, 'r:UTF-8').returns(valid_xml_plist)
|
81
80
|
expect(subject.read_plist_file(plist_path)).to eq(valid_xml_plist_hash)
|
82
81
|
end
|
83
|
-
|
84
82
|
it "raises a debug message and replaces a bad XML plist doctype should one be encountered" do
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
83
|
+
subject.stubs(:read_file_with_offset).with(plist_path, 8).returns('notbinary')
|
84
|
+
subject.stubs(:open_file_with_args).with(plist_path, 'r:UTF-8').returns(bad_xml_doctype)
|
85
|
+
subject.expects(:new_cfpropertylist).with({:data => good_xml_doctype}).returns('plist_object')
|
86
|
+
subject.stubs(:convert_cfpropertylist_to_native_types).with('plist_object').returns('plist_hash')
|
87
|
+
Puppet.expects(:debug).with("Had to fix plist with incorrect DOCTYPE declaration: #{plist_path}")
|
90
88
|
expect(subject.read_plist_file(plist_path)).to eq('plist_hash')
|
91
89
|
end
|
92
|
-
|
93
90
|
it "attempts to read pure xml using plutil when reading an improperly formatted service plist" do
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
91
|
+
subject.stubs(:read_file_with_offset).with(plist_path, 8).returns('notbinary')
|
92
|
+
subject.stubs(:open_file_with_args).with(plist_path, 'r:UTF-8').returns(invalid_xml_plist)
|
93
|
+
Puppet.expects(:debug).with(regexp_matches(/^Failed with CFFormatError/))
|
94
|
+
Puppet.expects(:debug).with("Plist #{plist_path} ill-formatted, converting with plutil")
|
95
|
+
Puppet::Util::Execution.expects(:execute)
|
99
96
|
.with(['/usr/bin/plutil', '-convert', 'xml1', '-o', '-', plist_path],
|
100
97
|
{:failonfail => true, :combine => true})
|
101
|
-
.
|
98
|
+
.returns(Puppet::Util::Execution::ProcessOutput.new(valid_xml_plist, 0))
|
102
99
|
expect(subject.read_plist_file(plist_path)).to eq(valid_xml_plist_hash)
|
103
100
|
end
|
104
|
-
|
105
101
|
it "returns nil when direct parsing and plutil conversion both fail" do
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
102
|
+
subject.stubs(:read_file_with_offset).with(plist_path, 8).returns('notbinary')
|
103
|
+
subject.stubs(:open_file_with_args).with(plist_path, 'r:UTF-8').returns(non_plist_data)
|
104
|
+
Puppet.expects(:debug).with(regexp_matches(/^Failed with (CFFormatError|NoMethodError)/))
|
105
|
+
Puppet.expects(:debug).with("Plist #{plist_path} ill-formatted, converting with plutil")
|
106
|
+
Puppet::Util::Execution.expects(:execute)
|
111
107
|
.with(['/usr/bin/plutil', '-convert', 'xml1', '-o', '-', plist_path],
|
112
108
|
{:failonfail => true, :combine => true})
|
113
|
-
.
|
109
|
+
.raises(Puppet::ExecutionFailure, 'boom')
|
114
110
|
expect(subject.read_plist_file(plist_path)).to eq(nil)
|
115
111
|
end
|
116
|
-
|
117
112
|
it "returns nil when file is a non-plist binary blob" do
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
113
|
+
subject.stubs(:read_file_with_offset).with(plist_path, 8).returns('notbinary')
|
114
|
+
subject.stubs(:open_file_with_args).with(plist_path, 'r:UTF-8').returns(binary_data)
|
115
|
+
Puppet.expects(:debug).with(regexp_matches(/^Failed with (CFFormatError|ArgumentError)/))
|
116
|
+
Puppet.expects(:debug).with("Plist #{plist_path} ill-formatted, converting with plutil")
|
117
|
+
Puppet::Util::Execution.expects(:execute)
|
123
118
|
.with(['/usr/bin/plutil', '-convert', 'xml1', '-o', '-', plist_path],
|
124
119
|
{:failonfail => true, :combine => true})
|
125
|
-
.
|
120
|
+
.raises(Puppet::ExecutionFailure, 'boom')
|
126
121
|
expect(subject.read_plist_file(plist_path)).to eq(nil)
|
127
122
|
end
|
128
123
|
end
|
@@ -131,17 +126,15 @@ describe Puppet::Util::Plist, :if => Puppet.features.cfpropertylist? do
|
|
131
126
|
it "returns a valid hash when a valid XML plist is provided" do
|
132
127
|
expect(subject.parse_plist(valid_xml_plist)).to eq(valid_xml_plist_hash)
|
133
128
|
end
|
134
|
-
|
135
129
|
it "raises a debug message and replaces a bad XML plist doctype should one be encountered" do
|
136
|
-
|
137
|
-
|
138
|
-
|
130
|
+
subject.expects(:new_cfpropertylist).with({:data => good_xml_doctype}).returns('plist_object')
|
131
|
+
subject.stubs(:convert_cfpropertylist_to_native_types).with('plist_object')
|
132
|
+
Puppet.expects(:debug).with("Had to fix plist with incorrect DOCTYPE declaration: #{plist_path}")
|
139
133
|
subject.parse_plist(bad_xml_doctype, plist_path)
|
140
134
|
end
|
141
|
-
|
142
135
|
it "raises a debug message with malformed plist" do
|
143
|
-
|
144
|
-
|
136
|
+
subject.stubs(:convert_cfpropertylist_to_native_types).with('plist_object')
|
137
|
+
Puppet.expects(:debug).with(regexp_matches(/^Failed with CFFormatError/))
|
145
138
|
subject.parse_plist("<plist><dict><key>Foo</key>")
|
146
139
|
end
|
147
140
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/util/posix'
|
@@ -20,20 +21,16 @@ describe Puppet::Util::POSIX do
|
|
20
21
|
['group3', ['user1']],
|
21
22
|
['group4', ['user2']]
|
22
23
|
].map do |(name, members)|
|
23
|
-
group_struct =
|
24
|
-
|
25
|
-
|
24
|
+
group_struct = stub("Group #{name}")
|
25
|
+
group_struct.stubs(:name).returns(name)
|
26
|
+
group_struct.stubs(:mem).returns(members)
|
26
27
|
|
27
28
|
group_struct
|
28
29
|
end
|
29
30
|
end
|
30
31
|
|
31
32
|
before(:each) do
|
32
|
-
|
33
|
-
mock_groups.each do |mock_group|
|
34
|
-
etc_stub = etc_stub.and_yield(mock_group)
|
35
|
-
end
|
36
|
-
allow(Puppet::Etc).to etc_stub
|
33
|
+
Puppet::Etc.stubs(:group).multiple_yields(*mock_groups)
|
37
34
|
end
|
38
35
|
|
39
36
|
it 'returns the groups of the given user' do
|
@@ -73,7 +70,7 @@ describe Puppet::Util::POSIX do
|
|
73
70
|
|
74
71
|
describe "when retrieving a posix field" do
|
75
72
|
before do
|
76
|
-
@thing =
|
73
|
+
@thing = stub 'thing', :field => "asdf"
|
77
74
|
end
|
78
75
|
|
79
76
|
it "should fail if no id was passed" do
|
@@ -83,23 +80,23 @@ describe Puppet::Util::POSIX do
|
|
83
80
|
describe "and the id is an integer" do
|
84
81
|
it "should log an error and return nil if the specified id is greater than the maximum allowed ID" do
|
85
82
|
Puppet[:maximum_uid] = 100
|
86
|
-
|
83
|
+
Puppet.expects(:err)
|
87
84
|
|
88
85
|
expect(@posix.get_posix_field("asdf", "bar", 200)).to be_nil
|
89
86
|
end
|
90
87
|
|
91
88
|
it "should use the method return by :methodbyid and return the specified field" do
|
92
|
-
|
89
|
+
Etc.expects(:getgrgid).returns @thing
|
93
90
|
|
94
|
-
|
91
|
+
@thing.expects(:field).returns "myval"
|
95
92
|
|
96
93
|
expect(@posix.get_posix_field(:gr, :field, 200)).to eq("myval")
|
97
94
|
end
|
98
95
|
|
99
96
|
it "should return nil if the method throws an exception" do
|
100
|
-
|
97
|
+
Etc.expects(:getgrgid).raises ArgumentError
|
101
98
|
|
102
|
-
|
99
|
+
@thing.expects(:field).never
|
103
100
|
|
104
101
|
expect(@posix.get_posix_field(:gr, :field, 200)).to be_nil
|
105
102
|
end
|
@@ -107,17 +104,17 @@ describe Puppet::Util::POSIX do
|
|
107
104
|
|
108
105
|
describe "and the id is not an integer" do
|
109
106
|
it "should use the method return by :methodbyid and return the specified field" do
|
110
|
-
|
107
|
+
Etc.expects(:getgrnam).returns @thing
|
111
108
|
|
112
|
-
|
109
|
+
@thing.expects(:field).returns "myval"
|
113
110
|
|
114
111
|
expect(@posix.get_posix_field(:gr, :field, "asdf")).to eq("myval")
|
115
112
|
end
|
116
113
|
|
117
114
|
it "should return nil if the method throws an exception" do
|
118
|
-
|
115
|
+
Etc.expects(:getgrnam).raises ArgumentError
|
119
116
|
|
120
|
-
|
117
|
+
@thing.expects(:field).never
|
121
118
|
|
122
119
|
expect(@posix.get_posix_field(:gr, :field, "asdf")).to be_nil
|
123
120
|
end
|
@@ -126,32 +123,32 @@ describe Puppet::Util::POSIX do
|
|
126
123
|
|
127
124
|
describe "when returning the gid" do
|
128
125
|
before do
|
129
|
-
|
126
|
+
@posix.stubs(:get_posix_field)
|
130
127
|
end
|
131
128
|
|
132
129
|
describe "and the group is an integer" do
|
133
130
|
it "should convert integers specified as a string into an integer" do
|
134
|
-
|
131
|
+
@posix.expects(:get_posix_field).with(:group, :name, 100)
|
135
132
|
|
136
133
|
@posix.gid("100")
|
137
134
|
end
|
138
135
|
|
139
136
|
it "should look up the name for the group" do
|
140
|
-
|
137
|
+
@posix.expects(:get_posix_field).with(:group, :name, 100)
|
141
138
|
|
142
139
|
@posix.gid(100)
|
143
140
|
end
|
144
141
|
|
145
142
|
it "should return nil if the group cannot be found" do
|
146
|
-
|
147
|
-
|
143
|
+
@posix.expects(:get_posix_field).once.returns nil
|
144
|
+
@posix.expects(:search_posix_field).never
|
148
145
|
|
149
146
|
expect(@posix.gid(100)).to be_nil
|
150
147
|
end
|
151
148
|
|
152
149
|
it "should use the found name to look up the id" do
|
153
|
-
|
154
|
-
|
150
|
+
@posix.expects(:get_posix_field).with(:group, :name, 100).returns "asdf"
|
151
|
+
@posix.expects(:get_posix_field).with(:group, :gid, "asdf").returns 100
|
155
152
|
|
156
153
|
expect(@posix.gid(100)).to eq(100)
|
157
154
|
end
|
@@ -159,10 +156,10 @@ describe Puppet::Util::POSIX do
|
|
159
156
|
# LAK: This is because some platforms have a broken Etc module that always return
|
160
157
|
# the same group.
|
161
158
|
it "should use :search_posix_field if the discovered id does not match the passed-in id" do
|
162
|
-
|
163
|
-
|
159
|
+
@posix.expects(:get_posix_field).with(:group, :name, 100).returns "asdf"
|
160
|
+
@posix.expects(:get_posix_field).with(:group, :gid, "asdf").returns 50
|
164
161
|
|
165
|
-
|
162
|
+
@posix.expects(:search_posix_field).with(:group, :gid, 100).returns "asdf"
|
166
163
|
|
167
164
|
expect(@posix.gid(100)).to eq("asdf")
|
168
165
|
end
|
@@ -170,30 +167,30 @@ describe Puppet::Util::POSIX do
|
|
170
167
|
|
171
168
|
describe "and the group is a string" do
|
172
169
|
it "should look up the gid for the group" do
|
173
|
-
|
170
|
+
@posix.expects(:get_posix_field).with(:group, :gid, "asdf")
|
174
171
|
|
175
172
|
@posix.gid("asdf")
|
176
173
|
end
|
177
174
|
|
178
175
|
it "should return nil if the group cannot be found" do
|
179
|
-
|
180
|
-
|
176
|
+
@posix.expects(:get_posix_field).once.returns nil
|
177
|
+
@posix.expects(:search_posix_field).never
|
181
178
|
|
182
179
|
expect(@posix.gid("asdf")).to be_nil
|
183
180
|
end
|
184
181
|
|
185
182
|
it "should use the found gid to look up the nam" do
|
186
|
-
|
187
|
-
|
183
|
+
@posix.expects(:get_posix_field).with(:group, :gid, "asdf").returns 100
|
184
|
+
@posix.expects(:get_posix_field).with(:group, :name, 100).returns "asdf"
|
188
185
|
|
189
186
|
expect(@posix.gid("asdf")).to eq(100)
|
190
187
|
end
|
191
188
|
|
192
189
|
it "should use :search_posix_field if the discovered name does not match the passed-in name" do
|
193
|
-
|
194
|
-
|
190
|
+
@posix.expects(:get_posix_field).with(:group, :gid, "asdf").returns 100
|
191
|
+
@posix.expects(:get_posix_field).with(:group, :name, 100).returns "boo"
|
195
192
|
|
196
|
-
|
193
|
+
@posix.expects(:search_posix_field).with(:group, :gid, "asdf").returns "asdf"
|
197
194
|
|
198
195
|
expect(@posix.gid("asdf")).to eq("asdf")
|
199
196
|
end
|
@@ -202,32 +199,32 @@ describe Puppet::Util::POSIX do
|
|
202
199
|
|
203
200
|
describe "when returning the uid" do
|
204
201
|
before do
|
205
|
-
|
202
|
+
@posix.stubs(:get_posix_field)
|
206
203
|
end
|
207
204
|
|
208
205
|
describe "and the group is an integer" do
|
209
206
|
it "should convert integers specified as a string into an integer" do
|
210
|
-
|
207
|
+
@posix.expects(:get_posix_field).with(:passwd, :name, 100)
|
211
208
|
|
212
209
|
@posix.uid("100")
|
213
210
|
end
|
214
211
|
|
215
212
|
it "should look up the name for the group" do
|
216
|
-
|
213
|
+
@posix.expects(:get_posix_field).with(:passwd, :name, 100)
|
217
214
|
|
218
215
|
@posix.uid(100)
|
219
216
|
end
|
220
217
|
|
221
218
|
it "should return nil if the group cannot be found" do
|
222
|
-
|
223
|
-
|
219
|
+
@posix.expects(:get_posix_field).once.returns nil
|
220
|
+
@posix.expects(:search_posix_field).never
|
224
221
|
|
225
222
|
expect(@posix.uid(100)).to be_nil
|
226
223
|
end
|
227
224
|
|
228
225
|
it "should use the found name to look up the id" do
|
229
|
-
|
230
|
-
|
226
|
+
@posix.expects(:get_posix_field).with(:passwd, :name, 100).returns "asdf"
|
227
|
+
@posix.expects(:get_posix_field).with(:passwd, :uid, "asdf").returns 100
|
231
228
|
|
232
229
|
expect(@posix.uid(100)).to eq(100)
|
233
230
|
end
|
@@ -235,10 +232,10 @@ describe Puppet::Util::POSIX do
|
|
235
232
|
# LAK: This is because some platforms have a broken Etc module that always return
|
236
233
|
# the same group.
|
237
234
|
it "should use :search_posix_field if the discovered id does not match the passed-in id" do
|
238
|
-
|
239
|
-
|
235
|
+
@posix.expects(:get_posix_field).with(:passwd, :name, 100).returns "asdf"
|
236
|
+
@posix.expects(:get_posix_field).with(:passwd, :uid, "asdf").returns 50
|
240
237
|
|
241
|
-
|
238
|
+
@posix.expects(:search_posix_field).with(:passwd, :uid, 100).returns "asdf"
|
242
239
|
|
243
240
|
expect(@posix.uid(100)).to eq("asdf")
|
244
241
|
end
|
@@ -246,30 +243,30 @@ describe Puppet::Util::POSIX do
|
|
246
243
|
|
247
244
|
describe "and the group is a string" do
|
248
245
|
it "should look up the uid for the group" do
|
249
|
-
|
246
|
+
@posix.expects(:get_posix_field).with(:passwd, :uid, "asdf")
|
250
247
|
|
251
248
|
@posix.uid("asdf")
|
252
249
|
end
|
253
250
|
|
254
251
|
it "should return nil if the group cannot be found" do
|
255
|
-
|
256
|
-
|
252
|
+
@posix.expects(:get_posix_field).once.returns nil
|
253
|
+
@posix.expects(:search_posix_field).never
|
257
254
|
|
258
255
|
expect(@posix.uid("asdf")).to be_nil
|
259
256
|
end
|
260
257
|
|
261
258
|
it "should use the found uid to look up the nam" do
|
262
|
-
|
263
|
-
|
259
|
+
@posix.expects(:get_posix_field).with(:passwd, :uid, "asdf").returns 100
|
260
|
+
@posix.expects(:get_posix_field).with(:passwd, :name, 100).returns "asdf"
|
264
261
|
|
265
262
|
expect(@posix.uid("asdf")).to eq(100)
|
266
263
|
end
|
267
264
|
|
268
265
|
it "should use :search_posix_field if the discovered name does not match the passed-in name" do
|
269
|
-
|
270
|
-
|
266
|
+
@posix.expects(:get_posix_field).with(:passwd, :uid, "asdf").returns 100
|
267
|
+
@posix.expects(:get_posix_field).with(:passwd, :name, 100).returns "boo"
|
271
268
|
|
272
|
-
|
269
|
+
@posix.expects(:search_posix_field).with(:passwd, :uid, "asdf").returns "asdf"
|
273
270
|
|
274
271
|
expect(@posix.uid("asdf")).to eq("asdf")
|
275
272
|
end
|