puppet 6.0.10-x64-mingw32 → 6.1.0-x64-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,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'pathname'
|
@@ -15,12 +16,7 @@ shared_examples_for "a restorable file" do
|
|
15
16
|
it "should restore the file" do
|
16
17
|
request = nil
|
17
18
|
|
18
|
-
|
19
|
-
# first argument to the block is which instance is currently being
|
20
|
-
# dealt with, and the remaining arguments are the arguments to the
|
21
|
-
# method, instead of the block only getting the arguments to the
|
22
|
-
# method.
|
23
|
-
expect_any_instance_of(klass).to receive(:find) { |_,r| request = r }.and_return(Puppet::FileBucket::File.new(plaintext))
|
19
|
+
klass.any_instance.expects(:find).with { |r| request = r }.returns(Puppet::FileBucket::File.new(plaintext))
|
24
20
|
|
25
21
|
expect(dipper.restore(dest, checksum)).to eq(checksum)
|
26
22
|
expect(digest(Puppet::FileSystem.binread(dest))).to eq(checksum)
|
@@ -33,12 +29,12 @@ shared_examples_for "a restorable file" do
|
|
33
29
|
it "should skip restoring if existing file has the same checksum" do
|
34
30
|
File.open(dest, 'wb') {|f| f.print(plaintext) }
|
35
31
|
|
36
|
-
|
32
|
+
dipper.expects(:getfile).never
|
37
33
|
expect(dipper.restore(dest, checksum)).to be_nil
|
38
34
|
end
|
39
35
|
|
40
36
|
it "should overwrite existing file if it has different checksum" do
|
41
|
-
|
37
|
+
klass.any_instance.expects(:find).returns(Puppet::FileBucket::File.new(plaintext))
|
42
38
|
|
43
39
|
File.open(dest, 'wb') {|f| f.print('other contents') }
|
44
40
|
|
@@ -61,7 +57,7 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
61
57
|
@dipper = Puppet::FileBucket::Dipper.new(:Path => make_absolute("/my/bucket"))
|
62
58
|
|
63
59
|
file = make_tmp_file('contents')
|
64
|
-
|
60
|
+
Puppet::FileBucket::File.indirection.expects(:head).raises ArgumentError
|
65
61
|
|
66
62
|
expect { @dipper.backup(file) }.to raise_error(Puppet::Error)
|
67
63
|
end
|
@@ -70,8 +66,8 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
70
66
|
@dipper = Puppet::FileBucket::Dipper.new(:Path => make_absolute("/my/bucket"))
|
71
67
|
|
72
68
|
file = make_tmp_file('contents')
|
73
|
-
|
74
|
-
|
69
|
+
Puppet::FileBucket::File.indirection.expects(:head).returns false
|
70
|
+
Puppet::FileBucket::File.indirection.expects(:save).raises ArgumentError
|
75
71
|
|
76
72
|
expect { @dipper.backup(file) }.to raise_error(Puppet::Error)
|
77
73
|
end
|
@@ -122,9 +118,9 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
122
118
|
expect(@dipper.diff(checksum2, nil, nil, file1)).to include(diff21)
|
123
119
|
expect(@dipper.diff(nil, checksum1, file2, nil)).to include(diff21)
|
124
120
|
expect(@dipper.diff(nil, nil, file2, file1)).to include(diff21)
|
121
|
+
|
125
122
|
end
|
126
123
|
end
|
127
|
-
|
128
124
|
describe "in windows environment", :if => Puppet::Util::Platform.windows? do
|
129
125
|
it "should fail in an informative way when trying to diff" do
|
130
126
|
@dipper = Puppet::FileBucket::Dipper.new(:Path => tmpdir("bucket"))
|
@@ -139,10 +135,9 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
139
135
|
end
|
140
136
|
end
|
141
137
|
end
|
142
|
-
|
143
138
|
it "should fail in an informative way when there are failures listing files on the server" do
|
144
139
|
@dipper = Puppet::FileBucket::Dipper.new(:Path => "/unexistent/bucket")
|
145
|
-
|
140
|
+
Puppet::FileBucket::File.indirection.expects(:find).returns nil
|
146
141
|
|
147
142
|
expect { @dipper.list(nil, nil) }.to raise_error(Puppet::Error)
|
148
143
|
end
|
@@ -261,7 +256,7 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
261
256
|
@dipper = Puppet::FileBucket::Dipper.new(:Server => "puppetmaster", :Port => "31337")
|
262
257
|
wrong_checksum = "DEADBEEF"
|
263
258
|
|
264
|
-
|
259
|
+
Puppet::FileBucketFile::Rest.any_instance.expects(:find).returns(nil)
|
265
260
|
expect { @dipper.diff(wrong_checksum, "WEIRDCKSM", nil, nil) }.to raise_error(Puppet::Error, "Failed to diff files")
|
266
261
|
|
267
262
|
end
|
@@ -269,7 +264,7 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
269
264
|
it "should properly diff files on the filebucket" do
|
270
265
|
@dipper = Puppet::FileBucket::Dipper.new(:Server => "puppetmaster", :Port => "31337")
|
271
266
|
|
272
|
-
|
267
|
+
Puppet::FileBucketFile::Rest.any_instance.expects(:find).returns("Probably valid diff")
|
273
268
|
|
274
269
|
expect(@dipper.diff("checksum1", "checksum2", nil, nil)).to eq("Probably valid diff")
|
275
270
|
end
|
@@ -321,10 +316,10 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
321
316
|
|
322
317
|
file = make_tmp_file(plaintext)
|
323
318
|
|
324
|
-
|
325
|
-
%r{#{digest_algorithm}/#{checksum}}, :bucket_path => "/my/bucket"
|
326
|
-
).
|
327
|
-
|
319
|
+
Puppet::FileBucket::File.indirection.expects(:head).with(
|
320
|
+
regexp_matches(%r{#{digest_algorithm}/#{checksum}}), :bucket_path => "/my/bucket"
|
321
|
+
).returns true
|
322
|
+
Puppet::FileBucket::File.indirection.expects(:save).never
|
328
323
|
expect(@dipper.backup(file)).to eq(checksum)
|
329
324
|
end
|
330
325
|
|
@@ -333,7 +328,7 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
333
328
|
|
334
329
|
request = nil
|
335
330
|
|
336
|
-
|
331
|
+
Puppet::FileBucketFile::File.any_instance.expects(:find).with{ |r| request = r }.once.returns(Puppet::FileBucket::File.new(plaintext))
|
337
332
|
|
338
333
|
expect(@dipper.getfile(checksum)).to eq(plaintext)
|
339
334
|
|
@@ -354,8 +349,8 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
354
349
|
request1 = nil
|
355
350
|
request2 = nil
|
356
351
|
|
357
|
-
|
358
|
-
|
352
|
+
Puppet::FileBucketFile::Rest.any_instance.expects(:head).with { |r| request1 = r }.once.returns(nil)
|
353
|
+
Puppet::FileBucketFile::Rest.any_instance.expects(:save).with { |r| request2 = r }.once
|
359
354
|
|
360
355
|
expect(@dipper.backup(file)).to eq(checksum)
|
361
356
|
[request1, request2].each do |r|
|
@@ -370,7 +365,7 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
370
365
|
|
371
366
|
request = nil
|
372
367
|
|
373
|
-
|
368
|
+
Puppet::FileBucketFile::Rest.any_instance.expects(:find).with { |r| request = r }.returns(Puppet::FileBucket::File.new(plaintext))
|
374
369
|
|
375
370
|
expect(@dipper.getfile(checksum)).to eq(plaintext)
|
376
371
|
|
@@ -382,6 +377,7 @@ describe Puppet::FileBucket::Dipper, :uses_checksums => true do
|
|
382
377
|
end
|
383
378
|
|
384
379
|
describe "#restore" do
|
380
|
+
|
385
381
|
describe "when restoring from a remote server" do
|
386
382
|
let(:klass) { Puppet::FileBucketFile::Rest }
|
387
383
|
let(:server) { "puppetmaster" }
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/file_serving/base'
|
@@ -41,7 +42,7 @@ describe Puppet::FileServing::Base do
|
|
41
42
|
end
|
42
43
|
|
43
44
|
it "should allow specification of a relative path" do
|
44
|
-
|
45
|
+
Puppet::FileSystem.stubs(:exist?).returns(true)
|
45
46
|
expect(Puppet::FileServing::Base.new(path, :relative_path => "my/file").relative_path).to eq("my/file")
|
46
47
|
end
|
47
48
|
|
@@ -50,19 +51,19 @@ describe Puppet::FileServing::Base do
|
|
50
51
|
end
|
51
52
|
|
52
53
|
it "should correctly indicate if the file is present" do
|
53
|
-
|
54
|
+
Puppet::FileSystem.expects(:lstat).with(file).returns stub('stat')
|
54
55
|
expect(Puppet::FileServing::Base.new(file).exist?).to be_truthy
|
55
56
|
end
|
56
57
|
|
57
58
|
it "should correctly indicate if the file is absent" do
|
58
|
-
|
59
|
+
Puppet::FileSystem.expects(:lstat).with(file).raises RuntimeError
|
59
60
|
expect(Puppet::FileServing::Base.new(file).exist?).to be_falsey
|
60
61
|
end
|
61
62
|
|
62
63
|
describe "when setting the relative path" do
|
63
64
|
it "should require that the relative path be unqualified" do
|
64
65
|
@file = Puppet::FileServing::Base.new(path)
|
65
|
-
|
66
|
+
Puppet::FileSystem.stubs(:exist?).returns(true)
|
66
67
|
expect { @file.relative_path = File.expand_path("/qualified/file") }.to raise_error(ArgumentError)
|
67
68
|
end
|
68
69
|
end
|
@@ -101,7 +102,7 @@ describe Puppet::FileServing::Base do
|
|
101
102
|
let(:file) { Puppet::FileServing::Base.new(path) }
|
102
103
|
|
103
104
|
before :each do
|
104
|
-
|
105
|
+
Puppet::Util::Platform.stubs(:windows?).returns true
|
105
106
|
end
|
106
107
|
|
107
108
|
it "should preserve double slashes at the beginning of the path" do
|
@@ -118,26 +119,26 @@ describe Puppet::FileServing::Base do
|
|
118
119
|
describe "when stat'ing files" do
|
119
120
|
let(:path) { File.expand_path('/this/file') }
|
120
121
|
let(:file) { Puppet::FileServing::Base.new(path) }
|
121
|
-
let(:stat) {
|
122
|
-
let(:stubbed_file) {
|
122
|
+
let(:stat) { stub('stat', :ftype => 'file' ) }
|
123
|
+
let(:stubbed_file) { stub(path, :stat => stat, :lstat => stat)}
|
123
124
|
|
124
125
|
it "should stat the file's full path" do
|
125
|
-
|
126
|
+
Puppet::FileSystem.expects(:lstat).with(path).returns stat
|
126
127
|
file.stat
|
127
128
|
end
|
128
129
|
|
129
130
|
it "should fail if the file does not exist" do
|
130
|
-
|
131
|
+
Puppet::FileSystem.expects(:lstat).with(path).raises(Errno::ENOENT)
|
131
132
|
expect { file.stat }.to raise_error(Errno::ENOENT)
|
132
133
|
end
|
133
134
|
|
134
135
|
it "should use :lstat if :links is set to :manage" do
|
135
|
-
|
136
|
+
Puppet::FileSystem.expects(:lstat).with(path).returns stubbed_file
|
136
137
|
file.stat
|
137
138
|
end
|
138
139
|
|
139
140
|
it "should use :stat if :links is set to :follow" do
|
140
|
-
|
141
|
+
Puppet::FileSystem.expects(:stat).with(path).returns stubbed_file
|
141
142
|
file.links = :follow
|
142
143
|
file.stat
|
143
144
|
end
|
@@ -149,14 +150,14 @@ describe Puppet::FileServing::Base do
|
|
149
150
|
end
|
150
151
|
|
151
152
|
it "should accept Windows paths on Windows" do
|
152
|
-
|
153
|
-
|
153
|
+
Puppet::Util::Platform.stubs(:windows?).returns true
|
154
|
+
Puppet.features.stubs(:posix?).returns(false)
|
154
155
|
|
155
156
|
expect(Puppet::FileServing::Base).to be_absolute('c:/foo')
|
156
157
|
end
|
157
158
|
|
158
159
|
it "should reject Windows paths on POSIX" do
|
159
|
-
|
160
|
+
Puppet::Util::Platform.stubs(:windows?).returns false
|
160
161
|
|
161
162
|
expect(Puppet::FileServing::Base).not_to be_absolute('c:/foo')
|
162
163
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/file_serving/configuration/parser'
|
@@ -33,10 +34,10 @@ describe Puppet::FileServing::Configuration::Parser do
|
|
33
34
|
end
|
34
35
|
|
35
36
|
it "should return a hash of the created mounts" do
|
36
|
-
mount1 =
|
37
|
-
mount2 =
|
38
|
-
|
39
|
-
|
37
|
+
mount1 = mock 'one', :validate => true
|
38
|
+
mount2 = mock 'two', :validate => true
|
39
|
+
Puppet::FileServing::Mount::File.expects(:new).with("one").returns(mount1)
|
40
|
+
Puppet::FileServing::Mount::File.expects(:new).with("two").returns(mount2)
|
40
41
|
write_config_file "[one]\n[two]\n"
|
41
42
|
|
42
43
|
result = @parser.parse
|
@@ -55,21 +56,21 @@ describe Puppet::FileServing::Configuration::Parser do
|
|
55
56
|
end
|
56
57
|
|
57
58
|
it "should validate each created mount" do
|
58
|
-
mount1 =
|
59
|
-
|
59
|
+
mount1 = mock 'one'
|
60
|
+
Puppet::FileServing::Mount::File.expects(:new).with("one").returns(mount1)
|
60
61
|
write_config_file "[one]\n"
|
61
62
|
|
62
|
-
|
63
|
+
mount1.expects(:validate)
|
63
64
|
|
64
65
|
@parser.parse
|
65
66
|
end
|
66
67
|
|
67
68
|
it "should fail if any mount does not pass validation" do
|
68
|
-
mount1 =
|
69
|
-
|
69
|
+
mount1 = mock 'one'
|
70
|
+
Puppet::FileServing::Mount::File.expects(:new).with("one").returns(mount1)
|
70
71
|
write_config_file "[one]\n"
|
71
72
|
|
72
|
-
|
73
|
+
mount1.expects(:validate).raises RuntimeError
|
73
74
|
|
74
75
|
expect { @parser.parse }.to raise_error(RuntimeError)
|
75
76
|
end
|
@@ -85,15 +86,15 @@ describe Puppet::FileServing::Configuration::Parser do
|
|
85
86
|
include FSConfigurationParserTesting
|
86
87
|
|
87
88
|
before do
|
88
|
-
@mount =
|
89
|
-
|
90
|
-
|
89
|
+
@mount = stub 'testmount', :name => "one", :validate => true
|
90
|
+
Puppet::FileServing::Mount::File.expects(:new).with("one").returns(@mount)
|
91
|
+
@parser.stubs(:add_modules_mount)
|
91
92
|
end
|
92
93
|
|
93
94
|
it "should set the mount path to the path attribute from that section" do
|
94
95
|
write_config_file "[one]\npath /some/path\n"
|
95
96
|
|
96
|
-
|
97
|
+
@mount.expects(:path=).with("/some/path")
|
97
98
|
@parser.parse
|
98
99
|
end
|
99
100
|
|
@@ -101,16 +102,16 @@ describe Puppet::FileServing::Configuration::Parser do
|
|
101
102
|
it "should support inline comments in #{acl_type}" do
|
102
103
|
write_config_file "[one]\n#{acl_type} something \# will it work?\n"
|
103
104
|
|
104
|
-
|
105
|
-
|
105
|
+
@mount.expects(:info)
|
106
|
+
@mount.expects(acl_type).with("something")
|
106
107
|
@parser.parse
|
107
108
|
end
|
108
109
|
|
109
110
|
it "should tell the mount to #{acl_type} from ACLs with varying spacing around commas" do
|
110
111
|
write_config_file "[one]\n#{acl_type} someone,sometwo, somethree , somefour ,somefive\n"
|
111
112
|
|
112
|
-
|
113
|
-
|
113
|
+
@mount.expects(:info).times(5)
|
114
|
+
@mount.expects(acl_type).times(5).with(any_of('someone','sometwo','somethree','somefour','somefive'))
|
114
115
|
@parser.parse
|
115
116
|
end
|
116
117
|
|
@@ -119,8 +120,8 @@ describe Puppet::FileServing::Configuration::Parser do
|
|
119
120
|
it "should tell the mount to #{acl_type} from ACLs with glob at #{ip_pattern}" do
|
120
121
|
write_config_file "[one]\n#{acl_type} #{ip_pattern}\n"
|
121
122
|
|
122
|
-
|
123
|
-
|
123
|
+
@mount.expects(:info)
|
124
|
+
@mount.expects(acl_type).with(ip_pattern)
|
124
125
|
@parser.parse
|
125
126
|
end
|
126
127
|
}
|
@@ -137,21 +138,21 @@ describe Puppet::FileServing::Configuration::Parser do
|
|
137
138
|
include FSConfigurationParserTesting
|
138
139
|
|
139
140
|
before do
|
140
|
-
@mount =
|
141
|
+
@mount = stub 'modulesmount', :name => "modules", :validate => true
|
141
142
|
end
|
142
143
|
|
143
144
|
it "should create an instance of the Modules Mount class" do
|
144
145
|
write_config_file "[modules]\n"
|
145
146
|
|
146
|
-
|
147
|
+
Puppet::FileServing::Mount::Modules.expects(:new).with("modules").returns @mount
|
147
148
|
@parser.parse
|
148
149
|
end
|
149
150
|
|
150
151
|
it "should warn if a path is set" do
|
151
152
|
write_config_file "[modules]\npath /some/path\n"
|
152
|
-
|
153
|
+
Puppet::FileServing::Mount::Modules.expects(:new).with("modules").returns(@mount)
|
153
154
|
|
154
|
-
|
155
|
+
Puppet.expects(:warning)
|
155
156
|
@parser.parse
|
156
157
|
end
|
157
158
|
end
|
@@ -160,20 +161,20 @@ describe Puppet::FileServing::Configuration::Parser do
|
|
160
161
|
include FSConfigurationParserTesting
|
161
162
|
|
162
163
|
before do
|
163
|
-
@mount =
|
164
|
+
@mount = stub 'pluginsmount', :name => "plugins", :validate => true
|
164
165
|
end
|
165
166
|
|
166
167
|
it "should create an instance of the Plugins Mount class" do
|
167
168
|
write_config_file "[plugins]\n"
|
168
169
|
|
169
|
-
|
170
|
+
Puppet::FileServing::Mount::Plugins.expects(:new).with("plugins").returns @mount
|
170
171
|
@parser.parse
|
171
172
|
end
|
172
173
|
|
173
174
|
it "should warn if a path is set" do
|
174
175
|
write_config_file "[plugins]\npath /some/path\n"
|
175
176
|
|
176
|
-
|
177
|
+
Puppet.expects(:warning)
|
177
178
|
@parser.parse
|
178
179
|
end
|
179
180
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
#! /usr/bin/env ruby
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
require 'puppet/file_serving/configuration'
|
@@ -24,16 +25,17 @@ describe Puppet::FileServing::Configuration do
|
|
24
25
|
end
|
25
26
|
|
26
27
|
describe "when initializing" do
|
28
|
+
|
27
29
|
it "should work without a configuration file" do
|
28
|
-
|
30
|
+
Puppet::FileSystem.stubs(:exist?).with(@path).returns(false)
|
29
31
|
expect { Puppet::FileServing::Configuration.configuration }.to_not raise_error
|
30
32
|
end
|
31
33
|
|
32
34
|
it "should parse the configuration file if present" do
|
33
|
-
|
34
|
-
@parser =
|
35
|
-
|
36
|
-
|
35
|
+
Puppet::FileSystem.stubs(:exist?).with(@path).returns(true)
|
36
|
+
@parser = mock 'parser'
|
37
|
+
@parser.expects(:parse).returns({})
|
38
|
+
Puppet::FileServing::Configuration::Parser.stubs(:new).returns(@parser)
|
37
39
|
Puppet::FileServing::Configuration.configuration
|
38
40
|
end
|
39
41
|
|
@@ -43,37 +45,38 @@ describe Puppet::FileServing::Configuration do
|
|
43
45
|
end
|
44
46
|
|
45
47
|
describe "when parsing the configuration file" do
|
48
|
+
|
46
49
|
before do
|
47
|
-
|
48
|
-
@parser =
|
49
|
-
|
50
|
+
Puppet::FileSystem.stubs(:exist?).with(@path).returns(true)
|
51
|
+
@parser = mock 'parser'
|
52
|
+
Puppet::FileServing::Configuration::Parser.stubs(:new).returns(@parser)
|
50
53
|
end
|
51
54
|
|
52
55
|
it "should set the mount list to the results of parsing" do
|
53
|
-
|
56
|
+
@parser.expects(:parse).returns("one" => mock("mount"))
|
54
57
|
config = Puppet::FileServing::Configuration.configuration
|
55
58
|
expect(config.mounted?("one")).to be_truthy
|
56
59
|
end
|
57
60
|
|
58
61
|
it "should not raise exceptions" do
|
59
|
-
|
62
|
+
@parser.expects(:parse).raises(ArgumentError)
|
60
63
|
expect { Puppet::FileServing::Configuration.configuration }.to_not raise_error
|
61
64
|
end
|
62
65
|
|
63
66
|
it "should replace the existing mount list with the results of reparsing" do
|
64
|
-
|
67
|
+
@parser.expects(:parse).returns("one" => mock("mount"))
|
65
68
|
config = Puppet::FileServing::Configuration.configuration
|
66
69
|
expect(config.mounted?("one")).to be_truthy
|
67
70
|
# Now parse again
|
68
|
-
|
71
|
+
@parser.expects(:parse).returns("two" => mock('other'))
|
69
72
|
config.send(:readconfig, false)
|
70
73
|
expect(config.mounted?("one")).to be_falsey
|
71
74
|
expect(config.mounted?("two")).to be_truthy
|
72
75
|
end
|
73
76
|
|
74
77
|
it "should not replace the mount list until the file is entirely parsed successfully" do
|
75
|
-
|
76
|
-
|
78
|
+
@parser.expects(:parse).returns("one" => mock("mount"))
|
79
|
+
@parser.expects(:parse).raises(ArgumentError)
|
77
80
|
config = Puppet::FileServing::Configuration.configuration
|
78
81
|
# Now parse again, so the exception gets thrown
|
79
82
|
config.send(:readconfig, false)
|
@@ -81,7 +84,7 @@ describe Puppet::FileServing::Configuration do
|
|
81
84
|
end
|
82
85
|
|
83
86
|
it "should add modules, plugins, and tasks mounts even if the file does not exist" do
|
84
|
-
|
87
|
+
Puppet::FileSystem.expects(:exist?).returns false # the file doesn't exist
|
85
88
|
config = Puppet::FileServing::Configuration.configuration
|
86
89
|
expect(config.mounted?("modules")).to be_truthy
|
87
90
|
expect(config.mounted?("plugins")).to be_truthy
|
@@ -89,43 +92,43 @@ describe Puppet::FileServing::Configuration do
|
|
89
92
|
end
|
90
93
|
|
91
94
|
it "should allow all access to modules, plugins, and tasks if no fileserver.conf exists" do
|
92
|
-
|
93
|
-
modules =
|
94
|
-
|
95
|
-
|
95
|
+
Puppet::FileSystem.expects(:exist?).returns false # the file doesn't exist
|
96
|
+
modules = stub 'modules', :empty? => true
|
97
|
+
Puppet::FileServing::Mount::Modules.stubs(:new).returns(modules)
|
98
|
+
modules.expects(:allow).with('*')
|
96
99
|
|
97
|
-
plugins =
|
98
|
-
|
99
|
-
|
100
|
+
plugins = stub 'plugins', :empty? => true
|
101
|
+
Puppet::FileServing::Mount::Plugins.stubs(:new).returns(plugins)
|
102
|
+
plugins.expects(:allow).with('*')
|
100
103
|
|
101
|
-
tasks =
|
102
|
-
|
103
|
-
|
104
|
+
tasks = stub 'tasks', :empty? => true
|
105
|
+
Puppet::FileServing::Mount::Tasks.stubs(:new).returns(tasks)
|
106
|
+
tasks.expects(:allow).with('*')
|
104
107
|
|
105
108
|
Puppet::FileServing::Configuration.configuration
|
106
109
|
end
|
107
110
|
|
108
111
|
it "should not allow access from all to modules, plugins, and tasks if the fileserver.conf provided some rules" do
|
109
|
-
|
112
|
+
Puppet::FileSystem.expects(:exist?).returns false # the file doesn't exist
|
110
113
|
|
111
|
-
modules =
|
112
|
-
|
113
|
-
|
114
|
+
modules = stub 'modules', :empty? => false
|
115
|
+
Puppet::FileServing::Mount::Modules.stubs(:new).returns(modules)
|
116
|
+
modules.expects(:allow).with('*').never
|
114
117
|
|
115
|
-
plugins =
|
116
|
-
|
117
|
-
|
118
|
+
plugins = stub 'plugins', :empty? => false
|
119
|
+
Puppet::FileServing::Mount::Plugins.stubs(:new).returns(plugins)
|
120
|
+
plugins.expects(:allow).with('*').never
|
118
121
|
|
119
|
-
tasks =
|
120
|
-
|
121
|
-
|
122
|
+
tasks = stub 'tasks', :empty? => false
|
123
|
+
Puppet::FileServing::Mount::Tasks.stubs(:new).returns(tasks)
|
124
|
+
tasks.expects(:allow).with('*').never
|
122
125
|
|
123
126
|
Puppet::FileServing::Configuration.configuration
|
124
127
|
end
|
125
128
|
|
126
129
|
it "should add modules, plugins, and tasks mounts even if they are not returned by the parser" do
|
127
|
-
|
128
|
-
|
130
|
+
@parser.expects(:parse).returns("one" => mock("mount"))
|
131
|
+
Puppet::FileSystem.expects(:exist?).returns true # the file doesn't exist
|
129
132
|
config = Puppet::FileServing::Configuration.configuration
|
130
133
|
expect(config.mounted?("modules")).to be_truthy
|
131
134
|
expect(config.mounted?("plugins")).to be_truthy
|
@@ -136,16 +139,16 @@ describe Puppet::FileServing::Configuration do
|
|
136
139
|
describe "when finding the specified mount" do
|
137
140
|
it "should choose the named mount if one exists" do
|
138
141
|
config = Puppet::FileServing::Configuration.configuration
|
139
|
-
|
140
|
-
expect(config.find_mount("one",
|
142
|
+
config.expects(:mounts).returns("one" => "foo")
|
143
|
+
expect(config.find_mount("one", mock('env'))).to eq("foo")
|
141
144
|
end
|
142
145
|
|
143
146
|
it "should return nil if there is no such named mount" do
|
144
147
|
config = Puppet::FileServing::Configuration.configuration
|
145
148
|
|
146
|
-
env =
|
147
|
-
mount =
|
148
|
-
|
149
|
+
env = mock 'environment'
|
150
|
+
mount = mock 'mount'
|
151
|
+
config.stubs(:mounts).returns("modules" => mount)
|
149
152
|
|
150
153
|
expect(config.find_mount("foo", env)).to be_nil
|
151
154
|
end
|
@@ -153,66 +156,66 @@ describe Puppet::FileServing::Configuration do
|
|
153
156
|
|
154
157
|
describe "#split_path" do
|
155
158
|
let(:config) { Puppet::FileServing::Configuration.configuration }
|
156
|
-
let(:request) {
|
159
|
+
let(:request) { stub 'request', :key => "foo/bar/baz", :options => {}, :node => nil, :environment => mock("env") }
|
157
160
|
|
158
161
|
before do
|
159
|
-
|
162
|
+
config.stubs(:find_mount)
|
160
163
|
end
|
161
164
|
|
162
165
|
it "should reread the configuration" do
|
163
|
-
|
166
|
+
config.expects(:readconfig)
|
164
167
|
|
165
168
|
config.split_path(request)
|
166
169
|
end
|
167
170
|
|
168
171
|
it "should treat the first field of the URI path as the mount name" do
|
169
|
-
|
172
|
+
config.expects(:find_mount).with { |name, node| name == "foo" }
|
170
173
|
|
171
174
|
config.split_path(request)
|
172
175
|
end
|
173
176
|
|
174
177
|
it "should fail if the mount name is not alpha-numeric" do
|
175
|
-
|
178
|
+
request.expects(:key).returns "foo&bar/asdf"
|
176
179
|
|
177
180
|
expect { config.split_path(request) }.to raise_error(ArgumentError)
|
178
181
|
end
|
179
182
|
|
180
183
|
it "should support dashes in the mount name" do
|
181
|
-
|
184
|
+
request.expects(:key).returns "foo-bar/asdf"
|
182
185
|
|
183
186
|
expect { config.split_path(request) }.to_not raise_error
|
184
187
|
end
|
185
188
|
|
186
189
|
it "should use the mount name and environment to find the mount" do
|
187
|
-
|
188
|
-
|
190
|
+
config.expects(:find_mount).with { |name, env| name == "foo" and env == request.environment }
|
191
|
+
request.stubs(:node).returns("mynode")
|
189
192
|
|
190
193
|
config.split_path(request)
|
191
194
|
end
|
192
195
|
|
193
196
|
it "should return nil if the mount cannot be found" do
|
194
|
-
|
197
|
+
config.expects(:find_mount).returns nil
|
195
198
|
|
196
199
|
expect(config.split_path(request)).to be_nil
|
197
200
|
end
|
198
201
|
|
199
202
|
it "should return the mount and the relative path if the mount is found" do
|
200
|
-
mount =
|
201
|
-
|
203
|
+
mount = stub 'mount', :name => "foo"
|
204
|
+
config.expects(:find_mount).returns mount
|
202
205
|
|
203
206
|
expect(config.split_path(request)).to eq([mount, "bar/baz"])
|
204
207
|
end
|
205
208
|
|
206
209
|
it "should remove any double slashes" do
|
207
|
-
|
208
|
-
mount =
|
209
|
-
|
210
|
+
request.stubs(:key).returns "foo/bar//baz"
|
211
|
+
mount = stub 'mount', :name => "foo"
|
212
|
+
config.expects(:find_mount).returns mount
|
210
213
|
|
211
214
|
expect(config.split_path(request)).to eq([mount, "bar/baz"])
|
212
215
|
end
|
213
216
|
|
214
217
|
it "should fail if the path contains .." do
|
215
|
-
|
218
|
+
request.stubs(:key).returns 'module/foo/../../bar'
|
216
219
|
|
217
220
|
expect do
|
218
221
|
config.split_path(request)
|
@@ -220,17 +223,17 @@ describe Puppet::FileServing::Configuration do
|
|
220
223
|
end
|
221
224
|
|
222
225
|
it "should return the relative path as nil if it is an empty string" do
|
223
|
-
|
224
|
-
mount =
|
225
|
-
|
226
|
+
request.expects(:key).returns "foo"
|
227
|
+
mount = stub 'mount', :name => "foo"
|
228
|
+
config.expects(:find_mount).returns mount
|
226
229
|
|
227
230
|
expect(config.split_path(request)).to eq([mount, nil])
|
228
231
|
end
|
229
232
|
|
230
233
|
it "should add 'modules/' to the relative path if the modules mount is used but not specified, for backward compatibility" do
|
231
|
-
|
232
|
-
mount =
|
233
|
-
|
234
|
+
request.expects(:key).returns "foo/bar"
|
235
|
+
mount = stub 'mount', :name => "modules"
|
236
|
+
config.expects(:find_mount).returns mount
|
234
237
|
|
235
238
|
expect(config.split_path(request)).to eq([mount, "foo/bar"])
|
236
239
|
end
|