puppet 6.0.10-universal-darwin → 6.1.0-universal-darwin
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,8 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# Unit testing for the Init service Provider
|
4
|
+
#
|
5
|
+
|
1
6
|
require 'spec_helper'
|
2
7
|
|
3
8
|
describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform.jruby? do
|
@@ -40,12 +45,12 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
40
45
|
|
41
46
|
describe "when getting all service instances" do
|
42
47
|
before :each do
|
43
|
-
|
48
|
+
provider_class.stubs(:defpath).returns('tmp')
|
44
49
|
|
45
50
|
@services = ['one', 'two', 'three', 'four', 'umountfs']
|
46
|
-
|
47
|
-
|
48
|
-
|
51
|
+
Dir.stubs(:entries).with('tmp').returns @services
|
52
|
+
FileTest.expects(:directory?).with('tmp').returns(true)
|
53
|
+
FileTest.stubs(:executable?).returns(true)
|
49
54
|
end
|
50
55
|
|
51
56
|
it "should return instances for all services" do
|
@@ -63,7 +68,7 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
63
68
|
end
|
64
69
|
|
65
70
|
it "should omit Yocto services on cisco-wrlinux" do
|
66
|
-
|
71
|
+
Facter.stubs(:value).with(:osfamily).returns 'cisco-wrlinux'
|
67
72
|
exclude = 'umountfs'
|
68
73
|
expect(provider_class.get_services(provider_class.defpath).map(&:name)).to eq(@services - [exclude])
|
69
74
|
end
|
@@ -83,33 +88,33 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
83
88
|
it "should discard upstart jobs", :if => Puppet.features.manages_symlinks? do
|
84
89
|
not_init_service, *valid_services = @services
|
85
90
|
path = "tmp/#{not_init_service}"
|
86
|
-
|
87
|
-
|
88
|
-
|
91
|
+
Puppet::FileSystem.expects(:symlink?).at_least_once.returns false
|
92
|
+
Puppet::FileSystem.expects(:symlink?).with(Puppet::FileSystem.pathname(path)).returns(true)
|
93
|
+
Puppet::FileSystem.expects(:readlink).with(Puppet::FileSystem.pathname(path)).returns("/lib/init/upstart-job")
|
89
94
|
expect(provider_class.instances.map(&:name)).to eq(valid_services)
|
90
95
|
end
|
91
96
|
|
92
97
|
it "should discard non-initscript scripts" do
|
93
98
|
valid_services = @services
|
94
99
|
all_services = valid_services + excludes
|
95
|
-
|
100
|
+
Dir.expects(:entries).with('tmp').returns all_services
|
96
101
|
expect(provider_class.instances.map(&:name)).to match_array(valid_services)
|
97
102
|
end
|
98
103
|
end
|
99
104
|
|
100
105
|
describe "when checking valid paths" do
|
101
106
|
it "should discard paths that do not exist" do
|
102
|
-
|
103
|
-
|
104
|
-
|
107
|
+
File.expects(:directory?).with(paths[0]).returns false
|
108
|
+
Puppet::FileSystem.expects(:exist?).with(paths[0]).returns false
|
109
|
+
File.expects(:directory?).with(paths[1]).returns true
|
105
110
|
|
106
111
|
expect(provider.paths).to eq([paths[1]])
|
107
112
|
end
|
108
113
|
|
109
114
|
it "should discard paths that are not directories" do
|
110
115
|
paths.each do |path|
|
111
|
-
|
112
|
-
|
116
|
+
Puppet::FileSystem.expects(:exist?).with(path).returns true
|
117
|
+
File.expects(:directory?).with(path).returns false
|
113
118
|
end
|
114
119
|
expect(provider.paths).to be_empty
|
115
120
|
end
|
@@ -117,32 +122,32 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
117
122
|
|
118
123
|
describe "when searching for the init script" do
|
119
124
|
before :each do
|
120
|
-
paths.each {|path|
|
125
|
+
paths.each {|path| File.expects(:directory?).with(path).returns true }
|
121
126
|
end
|
122
127
|
|
123
128
|
it "should be able to find the init script in the service path" do
|
124
|
-
|
125
|
-
|
129
|
+
Puppet::FileSystem.expects(:exist?).with("#{paths[0]}/myservice").returns true
|
130
|
+
Puppet::FileSystem.expects(:exist?).with("#{paths[1]}/myservice").never # first one wins
|
126
131
|
expect(provider.initscript).to eq("/service/path/myservice")
|
127
132
|
end
|
128
133
|
|
129
134
|
it "should be able to find the init script in an alternate service path" do
|
130
|
-
|
131
|
-
|
135
|
+
Puppet::FileSystem.expects(:exist?).with("#{paths[0]}/myservice").returns false
|
136
|
+
Puppet::FileSystem.expects(:exist?).with("#{paths[1]}/myservice").returns true
|
132
137
|
expect(provider.initscript).to eq("/alt/service/path/myservice")
|
133
138
|
end
|
134
139
|
|
135
140
|
it "should be able to find the init script if it ends with .sh" do
|
136
|
-
|
137
|
-
|
138
|
-
|
141
|
+
Puppet::FileSystem.expects(:exist?).with("#{paths[0]}/myservice").returns false
|
142
|
+
Puppet::FileSystem.expects(:exist?).with("#{paths[1]}/myservice").returns false
|
143
|
+
Puppet::FileSystem.expects(:exist?).with("#{paths[0]}/myservice.sh").returns true
|
139
144
|
expect(provider.initscript).to eq("/service/path/myservice.sh")
|
140
145
|
end
|
141
146
|
|
142
147
|
it "should fail if the service isn't there" do
|
143
148
|
paths.each do |path|
|
144
|
-
|
145
|
-
|
149
|
+
Puppet::FileSystem.expects(:exist?).with("#{path}/myservice").returns false
|
150
|
+
Puppet::FileSystem.expects(:exist?).with("#{path}/myservice.sh").returns false
|
146
151
|
end
|
147
152
|
expect { provider.initscript }.to raise_error(Puppet::Error, "Could not find init script for 'myservice'")
|
148
153
|
end
|
@@ -150,24 +155,23 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
150
155
|
|
151
156
|
describe "if the init script is present" do
|
152
157
|
before :each do
|
153
|
-
|
154
|
-
|
155
|
-
|
158
|
+
File.stubs(:directory?).with("/service/path").returns true
|
159
|
+
File.stubs(:directory?).with("/alt/service/path").returns true
|
160
|
+
Puppet::FileSystem.stubs(:exist?).with("/service/path/myservice").returns true
|
156
161
|
end
|
157
162
|
|
158
163
|
[:start, :stop, :status, :restart].each do |method|
|
159
164
|
it "should have a #{method} method" do
|
160
165
|
expect(provider).to respond_to(method)
|
161
166
|
end
|
162
|
-
|
163
167
|
describe "when running #{method}" do
|
164
168
|
before :each do
|
165
|
-
|
169
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(0)
|
166
170
|
end
|
167
171
|
|
168
172
|
it "should use any provided explicit command" do
|
169
173
|
resource[method] = "/user/specified/command"
|
170
|
-
|
174
|
+
provider.expects(:execute).with { |command, *args| command == ["/user/specified/command"] }
|
171
175
|
|
172
176
|
provider.send(method)
|
173
177
|
end
|
@@ -175,7 +179,7 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
175
179
|
it "should pass #{method} to the init script when no explicit command is provided" do
|
176
180
|
resource[:hasrestart] = :true
|
177
181
|
resource[:hasstatus] = :true
|
178
|
-
|
182
|
+
provider.expects(:execute).with { |command, *args| command == ["/service/path/myservice",method]}
|
179
183
|
|
180
184
|
provider.send(method)
|
181
185
|
end
|
@@ -187,40 +191,35 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
187
191
|
before :each do
|
188
192
|
resource[:hasstatus] = :true
|
189
193
|
end
|
190
|
-
|
191
194
|
it "should execute the command" do
|
192
|
-
|
193
|
-
|
195
|
+
provider.expects(:texecute).with(:status, ['/service/path/myservice', :status], false).returns("")
|
196
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(0)
|
194
197
|
provider.status
|
195
198
|
end
|
196
|
-
|
197
199
|
it "should consider the process running if the command returns 0" do
|
198
|
-
|
199
|
-
|
200
|
+
provider.expects(:texecute).with(:status, ['/service/path/myservice', :status], false).returns("")
|
201
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(0)
|
200
202
|
expect(provider.status).to eq(:running)
|
201
203
|
end
|
202
|
-
|
203
204
|
[-10,-1,1,10].each { |ec|
|
204
205
|
it "should consider the process stopped if the command returns something non-0" do
|
205
|
-
|
206
|
-
|
206
|
+
provider.expects(:texecute).with(:status, ['/service/path/myservice', :status], false).returns("")
|
207
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(ec)
|
207
208
|
expect(provider.status).to eq(:stopped)
|
208
209
|
end
|
209
210
|
}
|
210
211
|
end
|
211
|
-
|
212
212
|
describe "when hasstatus is not :true" do
|
213
213
|
before :each do
|
214
214
|
resource[:hasstatus] = :false
|
215
215
|
end
|
216
216
|
|
217
217
|
it "should consider the service :running if it has a pid" do
|
218
|
-
|
218
|
+
provider.expects(:getpid).returns "1234"
|
219
219
|
expect(provider.status).to eq(:running)
|
220
220
|
end
|
221
|
-
|
222
221
|
it "should consider the service :stopped if it doesn't have a pid" do
|
223
|
-
|
222
|
+
provider.expects(:getpid).returns nil
|
224
223
|
expect(provider.status).to eq(:stopped)
|
225
224
|
end
|
226
225
|
end
|
@@ -232,27 +231,27 @@ describe 'Puppet::Type::Service::Provider::Init', unless: Puppet::Util::Platform
|
|
232
231
|
end
|
233
232
|
|
234
233
|
it "should stop and restart the process" do
|
235
|
-
|
236
|
-
|
237
|
-
|
234
|
+
provider.expects(:texecute).with(:stop, ['/service/path/myservice', :stop ], true).returns("")
|
235
|
+
provider.expects(:texecute).with(:start,['/service/path/myservice', :start], true).returns("")
|
236
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(0)
|
238
237
|
provider.restart
|
239
238
|
end
|
240
239
|
end
|
241
240
|
|
242
241
|
describe "when starting a service on Solaris" do
|
243
242
|
it "should use ctrun" do
|
244
|
-
|
245
|
-
|
246
|
-
|
243
|
+
Facter.stubs(:value).with(:osfamily).returns 'Solaris'
|
244
|
+
provider.expects(:execute).with('/usr/bin/ctrun -l child /service/path/myservice start', {:failonfail => true, :override_locale => false, :squelch => false, :combine => true}).returns("")
|
245
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(0)
|
247
246
|
provider.start
|
248
247
|
end
|
249
248
|
end
|
250
249
|
|
251
250
|
describe "when starting a service on RedHat" do
|
252
251
|
it "should not use ctrun" do
|
253
|
-
|
254
|
-
|
255
|
-
|
252
|
+
Facter.stubs(:value).with(:osfamily).returns 'RedHat'
|
253
|
+
provider.expects(:execute).with(['/service/path/myservice', :start], {:failonfail => true, :override_locale => false, :squelch => false, :combine => true}).returns("")
|
254
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(0)
|
256
255
|
provider.start
|
257
256
|
end
|
258
257
|
end
|
@@ -1,3 +1,6 @@
|
|
1
|
+
# Spec Tests for the Launchd provider
|
2
|
+
#
|
3
|
+
|
1
4
|
require 'spec_helper'
|
2
5
|
|
3
6
|
describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platform.jruby? do
|
@@ -25,23 +28,20 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
25
28
|
|
26
29
|
describe 'the status of the services' do
|
27
30
|
it "should call the external command 'launchctl list' once" do
|
28
|
-
|
29
|
-
|
31
|
+
provider.expects(:launchctl).with(:list).returns(joblabel)
|
32
|
+
provider.expects(:jobsearch).with(nil).returns({joblabel => "/Library/LaunchDaemons/#{joblabel}"})
|
30
33
|
provider.prefetch({})
|
31
34
|
end
|
32
|
-
|
33
35
|
it "should return stopped if not listed in launchctl list output" do
|
34
|
-
|
35
|
-
|
36
|
-
expect(provider.prefetch({}).last.status).to eq
|
36
|
+
provider.expects(:launchctl).with(:list).returns('com.bar.is_running')
|
37
|
+
provider.expects(:jobsearch).with(nil).returns({'com.bar.is_not_running' => "/Library/LaunchDaemons/com.bar.is_not_running"})
|
38
|
+
expect(provider.prefetch({}).last.status).to eq :stopped
|
37
39
|
end
|
38
|
-
|
39
40
|
it "should return running if listed in launchctl list output" do
|
40
|
-
|
41
|
-
|
42
|
-
expect(provider.prefetch({}).last.status).to eq
|
41
|
+
provider.expects(:launchctl).with(:list).returns('com.bar.is_running')
|
42
|
+
provider.expects(:jobsearch).with(nil).returns({'com.bar.is_running' => "/Library/LaunchDaemons/com.bar.is_running"})
|
43
|
+
expect(provider.prefetch({}).last.status).to eq :running
|
43
44
|
end
|
44
|
-
|
45
45
|
after :each do
|
46
46
|
provider.instance_variable_set(:@job_list, nil)
|
47
47
|
end
|
@@ -53,20 +53,20 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
53
53
|
|
54
54
|
it "should use the user-provided status command if present and return running if true" do
|
55
55
|
resource[:status] = '/bin/true'
|
56
|
-
|
57
|
-
|
56
|
+
subject.expects(:texecute).with(:status, ["/bin/true"], false).returns(0)
|
57
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(0)
|
58
58
|
expect(subject.status).to eq(:running)
|
59
59
|
end
|
60
60
|
|
61
61
|
it "should use the user-provided status command if present and return stopped if false" do
|
62
62
|
resource[:status] = '/bin/false'
|
63
|
-
|
64
|
-
|
63
|
+
subject.expects(:texecute).with(:status, ["/bin/false"], false).returns(nil)
|
64
|
+
$CHILD_STATUS.stubs(:exitstatus).returns(1)
|
65
65
|
expect(subject.status).to eq(:stopped)
|
66
66
|
end
|
67
67
|
|
68
68
|
it "should fall back to getpid if no status command is provided" do
|
69
|
-
|
69
|
+
subject.expects(:getpid).returns(123)
|
70
70
|
expect(subject.status).to eq(:running)
|
71
71
|
end
|
72
72
|
end
|
@@ -75,26 +75,24 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
75
75
|
[[10, '10.6'], [13, '10.9']].each do |kernel, version|
|
76
76
|
describe "when checking whether the service is enabled on OS X #{version}" do
|
77
77
|
it "should return true if the job plist says disabled is true and the global overrides says disabled is false" do
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
78
|
+
provider.expects(:get_os_version).returns(kernel).at_least_once
|
79
|
+
subject.expects(:plist_from_label).returns([joblabel, {"Disabled" => true}])
|
80
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_6_9).returns({joblabel => {"Disabled" => false}})
|
81
|
+
FileTest.expects(:file?).with(launchd_overrides_6_9).returns(true)
|
82
82
|
expect(subject.enabled?).to eq(:true)
|
83
83
|
end
|
84
|
-
|
85
84
|
it "should return false if the job plist says disabled is false and the global overrides says disabled is true" do
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
85
|
+
provider.expects(:get_os_version).returns(kernel).at_least_once
|
86
|
+
subject.expects(:plist_from_label).returns([joblabel, {"Disabled" => false}])
|
87
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_6_9).returns({joblabel => {"Disabled" => true}})
|
88
|
+
FileTest.expects(:file?).with(launchd_overrides_6_9).returns(true)
|
90
89
|
expect(subject.enabled?).to eq(:false)
|
91
90
|
end
|
92
|
-
|
93
91
|
it "should return true if the job plist and the global overrides have no disabled keys" do
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
92
|
+
provider.expects(:get_os_version).returns(kernel).at_least_once
|
93
|
+
subject.expects(:plist_from_label).returns([joblabel, {}])
|
94
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_6_9).returns({})
|
95
|
+
FileTest.expects(:file?).with(launchd_overrides_6_9).returns(true)
|
98
96
|
expect(subject.enabled?).to eq(:true)
|
99
97
|
end
|
100
98
|
end
|
@@ -102,26 +100,24 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
102
100
|
|
103
101
|
describe "when checking whether the service is enabled on OS X 10.10" do
|
104
102
|
it "should return true if the job plist says disabled is true and the global overrides says disabled is false" do
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
103
|
+
provider.expects(:get_os_version).returns(14).at_least_once
|
104
|
+
subject.expects(:plist_from_label).returns([joblabel, {"Disabled" => true}])
|
105
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_10_).returns({joblabel => false})
|
106
|
+
FileTest.expects(:file?).with(launchd_overrides_10_).returns(true)
|
109
107
|
expect(subject.enabled?).to eq(:true)
|
110
108
|
end
|
111
|
-
|
112
109
|
it "should return false if the job plist says disabled is false and the global overrides says disabled is true" do
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
110
|
+
provider.expects(:get_os_version).returns(14).at_least_once
|
111
|
+
subject.expects(:plist_from_label).returns([joblabel, {"Disabled" => false}])
|
112
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_10_).returns({joblabel => true})
|
113
|
+
FileTest.expects(:file?).with(launchd_overrides_10_).returns(true)
|
117
114
|
expect(subject.enabled?).to eq(:false)
|
118
115
|
end
|
119
|
-
|
120
116
|
it "should return true if the job plist and the global overrides have no disabled keys" do
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
117
|
+
provider.expects(:get_os_version).returns(14).at_least_once
|
118
|
+
subject.expects(:plist_from_label).returns([joblabel, {}])
|
119
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_10_).returns({})
|
120
|
+
FileTest.expects(:file?).with(launchd_overrides_10_).returns(true)
|
125
121
|
expect(subject.enabled?).to eq(:true)
|
126
122
|
end
|
127
123
|
end
|
@@ -129,51 +125,47 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
129
125
|
describe "when starting the service" do
|
130
126
|
it "should call any explicit 'start' command" do
|
131
127
|
resource[:start] = "/bin/false"
|
132
|
-
|
128
|
+
subject.expects(:texecute).with(:start, ["/bin/false"], true)
|
133
129
|
subject.start
|
134
130
|
end
|
135
131
|
|
136
132
|
it "should look for the relevant plist once" do
|
137
|
-
|
138
|
-
|
139
|
-
|
133
|
+
subject.expects(:plist_from_label).returns([joblabel, {}]).once
|
134
|
+
subject.expects(:enabled?).returns :true
|
135
|
+
subject.expects(:execute).with([:launchctl, :load, "-w", joblabel])
|
140
136
|
subject.start
|
141
137
|
end
|
142
|
-
|
143
138
|
it "should execute 'launchctl load' once without writing to the plist if the job is enabled" do
|
144
|
-
|
145
|
-
|
146
|
-
|
139
|
+
subject.expects(:plist_from_label).returns([joblabel, {}])
|
140
|
+
subject.expects(:enabled?).returns :true
|
141
|
+
subject.expects(:execute).with([:launchctl, :load, "-w", joblabel]).once
|
147
142
|
subject.start
|
148
143
|
end
|
149
|
-
|
150
144
|
it "should execute 'launchctl load' with writing to the plist once if the job is disabled" do
|
151
|
-
|
152
|
-
|
153
|
-
|
145
|
+
subject.expects(:plist_from_label).returns([joblabel, {}])
|
146
|
+
subject.expects(:enabled?).returns(:false)
|
147
|
+
subject.expects(:execute).with([:launchctl, :load, "-w", joblabel]).once
|
154
148
|
subject.start
|
155
149
|
end
|
156
|
-
|
157
150
|
it "should disable the job once if the job is disabled and should be disabled at boot" do
|
158
151
|
resource[:enable] = false
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
152
|
+
subject.expects(:plist_from_label).returns([joblabel, {"Disabled" => true}])
|
153
|
+
subject.expects(:enabled?).returns :false
|
154
|
+
subject.expects(:execute).with([:launchctl, :load, "-w", joblabel])
|
155
|
+
subject.expects(:disable).once
|
163
156
|
subject.start
|
164
157
|
end
|
165
|
-
|
166
158
|
it "(#2773) should execute 'launchctl load -w' if the job is enabled but stopped" do
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
159
|
+
subject.expects(:plist_from_label).returns([joblabel, {}])
|
160
|
+
subject.expects(:enabled?).returns(:true)
|
161
|
+
subject.expects(:status).returns(:stopped)
|
162
|
+
subject.expects(:execute).with([:launchctl, :load, '-w', joblabel])
|
171
163
|
subject.start
|
172
164
|
end
|
173
165
|
|
174
166
|
it "(#16271) Should stop and start the service when a restart is called" do
|
175
|
-
|
176
|
-
|
167
|
+
subject.expects(:stop)
|
168
|
+
subject.expects(:start)
|
177
169
|
subject.restart
|
178
170
|
end
|
179
171
|
end
|
@@ -181,37 +173,34 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
181
173
|
describe "when stopping the service" do
|
182
174
|
it "should call any explicit 'stop' command" do
|
183
175
|
resource[:stop] = "/bin/false"
|
184
|
-
|
176
|
+
subject.expects(:texecute).with(:stop, ["/bin/false"], true)
|
185
177
|
subject.stop
|
186
178
|
end
|
187
179
|
|
188
180
|
it "should look for the relevant plist once" do
|
189
|
-
|
190
|
-
|
191
|
-
|
181
|
+
subject.expects(:plist_from_label).returns([joblabel, {}]).once
|
182
|
+
subject.expects(:enabled?).returns :true
|
183
|
+
subject.expects(:execute).with([:launchctl, :unload, '-w', joblabel])
|
192
184
|
subject.stop
|
193
185
|
end
|
194
|
-
|
195
186
|
it "should execute 'launchctl unload' once without writing to the plist if the job is disabled" do
|
196
|
-
|
197
|
-
|
198
|
-
|
187
|
+
subject.expects(:plist_from_label).returns([joblabel, {}])
|
188
|
+
subject.expects(:enabled?).returns :false
|
189
|
+
subject.expects(:execute).with([:launchctl, :unload, joblabel]).once
|
199
190
|
subject.stop
|
200
191
|
end
|
201
|
-
|
202
192
|
it "should execute 'launchctl unload' with writing to the plist once if the job is enabled" do
|
203
|
-
|
204
|
-
|
205
|
-
|
193
|
+
subject.expects(:plist_from_label).returns([joblabel, {}])
|
194
|
+
subject.expects(:enabled?).returns :true
|
195
|
+
subject.expects(:execute).with([:launchctl, :unload, '-w', joblabel]).once
|
206
196
|
subject.stop
|
207
197
|
end
|
208
|
-
|
209
198
|
it "should enable the job once if the job is enabled and should be enabled at boot" do
|
210
199
|
resource[:enable] = true
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
200
|
+
subject.expects(:plist_from_label).returns([joblabel, {"Disabled" => false}])
|
201
|
+
subject.expects(:enabled?).returns :true
|
202
|
+
subject.expects(:execute).with([:launchctl, :unload, "-w", joblabel])
|
203
|
+
subject.expects(:enable).once
|
215
204
|
subject.stop
|
216
205
|
end
|
217
206
|
end
|
@@ -219,17 +208,16 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
219
208
|
describe "when enabling the service" do
|
220
209
|
it "should look for the relevant plist once" do ### Do we need this test? Differentiating it?
|
221
210
|
resource[:enable] = true
|
222
|
-
|
223
|
-
|
224
|
-
|
211
|
+
subject.expects(:plist_from_label).returns([joblabel, {}]).once
|
212
|
+
subject.expects(:enabled?).returns :false
|
213
|
+
subject.expects(:execute).with([:launchctl, :unload, joblabel])
|
225
214
|
subject.stop
|
226
215
|
end
|
227
|
-
|
228
216
|
it "should check if the job is enabled once" do
|
229
217
|
resource[:enable] = true
|
230
|
-
|
231
|
-
|
232
|
-
|
218
|
+
subject.expects(:plist_from_label).returns([joblabel, {}]).once
|
219
|
+
subject.expects(:enabled?).once
|
220
|
+
subject.expects(:execute).with([:launchctl, :unload, joblabel])
|
233
221
|
subject.stop
|
234
222
|
end
|
235
223
|
end
|
@@ -237,9 +225,9 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
237
225
|
describe "when disabling the service" do
|
238
226
|
it "should look for the relevant plist once" do
|
239
227
|
resource[:enable] = false
|
240
|
-
|
241
|
-
|
242
|
-
|
228
|
+
subject.expects(:plist_from_label).returns([joblabel, {}]).once
|
229
|
+
subject.expects(:enabled?).returns :true
|
230
|
+
subject.expects(:execute).with([:launchctl, :unload, '-w', joblabel])
|
243
231
|
subject.stop
|
244
232
|
end
|
245
233
|
end
|
@@ -248,9 +236,9 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
248
236
|
describe "when enabling the service on OS X #{version}" do
|
249
237
|
it "should write to the global launchd overrides file once" do
|
250
238
|
resource[:enable] = true
|
251
|
-
|
252
|
-
|
253
|
-
|
239
|
+
provider.expects(:get_os_version).returns(kernel).at_least_once
|
240
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_6_9).returns({})
|
241
|
+
plistlib.expects(:write_plist_file).with(has_entry(resource[:name], {'Disabled' => false}), launchd_overrides_6_9).once
|
254
242
|
subject.enable
|
255
243
|
end
|
256
244
|
end
|
@@ -258,9 +246,9 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
258
246
|
describe "when disabling the service on OS X #{version}" do
|
259
247
|
it "should write to the global launchd overrides file once" do
|
260
248
|
resource[:enable] = false
|
261
|
-
|
262
|
-
|
263
|
-
|
249
|
+
provider.expects(:get_os_version).returns(kernel).at_least_once
|
250
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_6_9).returns({})
|
251
|
+
plistlib.expects(:write_plist_file).with(has_entry(resource[:name], {'Disabled' => true}), launchd_overrides_6_9).once
|
264
252
|
subject.disable
|
265
253
|
end
|
266
254
|
end
|
@@ -269,9 +257,9 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
269
257
|
describe "when enabling the service on OS X 10.10" do
|
270
258
|
it "should write to the global launchd overrides file once" do
|
271
259
|
resource[:enable] = true
|
272
|
-
|
273
|
-
|
274
|
-
|
260
|
+
provider.expects(:get_os_version).returns(14).at_least_once
|
261
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_10_).returns({})
|
262
|
+
plistlib.expects(:write_plist_file).with(has_entry(resource[:name], false), launchd_overrides_10_).once
|
275
263
|
subject.enable
|
276
264
|
end
|
277
265
|
end
|
@@ -279,9 +267,9 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
279
267
|
describe "when disabling the service on OS X 10.10" do
|
280
268
|
it "should write to the global launchd overrides file once" do
|
281
269
|
resource[:enable] = false
|
282
|
-
|
283
|
-
|
284
|
-
|
270
|
+
provider.expects(:get_os_version).returns(14).at_least_once
|
271
|
+
plistlib.expects(:read_plist_file).with(launchd_overrides_10_).returns({})
|
272
|
+
plistlib.expects(:write_plist_file).with(has_entry(resource[:name], true), launchd_overrides_10_).once
|
285
273
|
subject.disable
|
286
274
|
end
|
287
275
|
end
|
@@ -293,7 +281,6 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
293
281
|
provider.send(:remove_instance_variable, :@label_to_path_map)
|
294
282
|
end
|
295
283
|
end
|
296
|
-
|
297
284
|
describe "when encountering malformed plists" do
|
298
285
|
let(:plist_without_label) do
|
299
286
|
{
|
@@ -304,36 +291,31 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
304
291
|
let(:binary_plist_path) { '/Library/LaunchAgents/org.binary.plist' }
|
305
292
|
|
306
293
|
it "[17624] should warn that the plist in question is being skipped" do
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
294
|
+
provider.expects(:launchd_paths).returns(['/Library/LaunchAgents'])
|
295
|
+
provider.expects(:return_globbed_list_of_file_paths).with('/Library/LaunchAgents').returns([busted_plist_path])
|
296
|
+
plistlib.expects(:read_plist_file).with(busted_plist_path).returns(plist_without_label)
|
297
|
+
Puppet.expects(:debug).with("Reading launchd plist #{busted_plist_path}")
|
298
|
+
Puppet.expects(:debug).with("The #{busted_plist_path} plist does not contain a 'label' key; Puppet is skipping it")
|
312
299
|
provider.make_label_to_path_map
|
313
300
|
end
|
314
301
|
end
|
315
|
-
|
316
302
|
it "should return the cached value when available" do
|
317
303
|
provider.instance_variable_set(:@label_to_path_map, {'xx'=>'yy'})
|
318
304
|
expect(provider.make_label_to_path_map).to eq({'xx'=>'yy'})
|
319
305
|
end
|
320
|
-
|
321
306
|
describe "when successful" do
|
322
307
|
let(:launchd_dir) { '/Library/LaunchAgents' }
|
323
308
|
let(:plist) { launchd_dir + '/foo.bar.service.plist' }
|
324
309
|
let(:label) { 'foo.bar.service' }
|
325
|
-
|
326
310
|
before do
|
327
311
|
provider.instance_variable_set(:@label_to_path_map, nil)
|
328
|
-
|
329
|
-
|
330
|
-
|
312
|
+
provider.expects(:launchd_paths).returns([launchd_dir])
|
313
|
+
provider.expects(:return_globbed_list_of_file_paths).with(launchd_dir).returns([plist])
|
314
|
+
plistlib.expects(:read_plist_file).with(plist).returns({'Label'=>'foo.bar.service'})
|
331
315
|
end
|
332
|
-
|
333
316
|
it "should read the plists and return their contents" do
|
334
317
|
expect(provider.make_label_to_path_map).to eq({label=>plist})
|
335
318
|
end
|
336
|
-
|
337
319
|
it "should re-read the plists and return their contents when refreshed" do
|
338
320
|
provider.instance_variable_set(:@label_to_path_map, {'xx'=>'yy'})
|
339
321
|
expect(provider.make_label_to_path_map(true)).to eq({label=>plist})
|
@@ -344,46 +326,42 @@ describe 'Puppet::Type::Service::Provider::Launchd', unless: Puppet::Util::Platf
|
|
344
326
|
describe "jobsearch" do
|
345
327
|
let(:map) { {"org.mozilla.puppet" => "/path/to/puppet.plist",
|
346
328
|
"org.mozilla.python" => "/path/to/python.plist"} }
|
347
|
-
|
348
|
-
|
349
|
-
expect(provider).to receive(:make_label_to_path_map).and_return(map)
|
329
|
+
it "returns the entire map with no args" do
|
330
|
+
provider.expects(:make_label_to_path_map).returns(map)
|
350
331
|
expect(provider.jobsearch).to eq(map)
|
351
332
|
end
|
352
|
-
|
353
333
|
it "returns a singleton hash when given a label" do
|
354
|
-
|
334
|
+
provider.expects(:make_label_to_path_map).returns(map)
|
355
335
|
expect(provider.jobsearch("org.mozilla.puppet")).to eq({ "org.mozilla.puppet" => "/path/to/puppet.plist" })
|
356
336
|
end
|
357
|
-
|
358
337
|
it "refreshes the label_to_path_map when label is not found" do
|
359
|
-
|
338
|
+
provider.expects(:make_label_to_path_map).with().returns({})
|
339
|
+
provider.expects(:make_label_to_path_map).with(true).returns(map)
|
360
340
|
expect(provider.jobsearch("org.mozilla.puppet")).to eq({ "org.mozilla.puppet" => "/path/to/puppet.plist" })
|
361
341
|
end
|
362
|
-
|
363
342
|
it "raises Puppet::Error when the label is still not found" do
|
364
|
-
|
343
|
+
provider.expects(:make_label_to_path_map).with().returns(map)
|
344
|
+
provider.expects(:make_label_to_path_map).with(true).returns(map)
|
365
345
|
expect { provider.jobsearch("NOSUCH") }.to raise_error(Puppet::Error)
|
366
346
|
end
|
367
347
|
end
|
368
348
|
|
369
349
|
describe "read_overrides" do
|
370
350
|
before do
|
371
|
-
|
351
|
+
Kernel.stubs(:sleep)
|
372
352
|
end
|
373
|
-
|
374
353
|
it "should read overrides" do
|
375
|
-
|
354
|
+
provider.expects(:read_plist).once.returns({})
|
376
355
|
expect(provider.read_overrides).to eq({})
|
377
356
|
end
|
378
|
-
|
379
357
|
it "should retry if read_plist fails" do
|
380
|
-
|
358
|
+
provider.expects(:read_plist).once.returns({})
|
359
|
+
provider.expects(:read_plist).once.returns(nil)
|
381
360
|
expect(provider.read_overrides).to eq({})
|
382
361
|
end
|
383
|
-
|
384
362
|
it "raises Puppet::Error after 20 attempts" do
|
385
|
-
|
363
|
+
provider.expects(:read_plist).times(20).returns(nil)
|
386
364
|
expect { provider.read_overrides }.to raise_error(Puppet::Error)
|
387
365
|
end
|
388
|
-
|
366
|
+
end
|
389
367
|
end
|