puppet 6.0.7-x86-mingw32 → 6.0.8-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Gemfile +0 -1
- data/Gemfile.lock +4 -8
- data/lib/puppet/application/device.rb +99 -83
- data/lib/puppet/application/filebucket.rb +4 -0
- data/lib/puppet/configurer.rb +5 -4
- data/lib/puppet/defaults.rb +31 -11
- data/lib/puppet/indirector/request.rb +26 -15
- data/lib/puppet/network/http/connection.rb +15 -7
- data/lib/puppet/transaction/event_manager.rb +1 -5
- data/lib/puppet/type/file/source.rb +0 -1
- data/lib/puppet/util/connection.rb +15 -6
- data/lib/puppet/util/http_proxy.rb +3 -2
- data/lib/puppet/version.rb +1 -1
- data/locales/puppet.pot +99 -40
- data/man/man5/puppet.conf.5 +8 -8
- 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 +1 -1
- 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/integration/agent/logging_spec.rb +5 -7
- data/spec/integration/application/apply_spec.rb +18 -16
- data/spec/integration/application/doc_spec.rb +1 -2
- data/spec/integration/application/lookup_spec.rb +5 -5
- data/spec/integration/configurer_spec.rb +5 -6
- data/spec/integration/defaults_spec.rb +5 -6
- data/spec/integration/directory_environments_spec.rb +1 -1
- data/spec/integration/faces/config_spec.rb +3 -4
- data/spec/integration/faces/documentation_spec.rb +0 -1
- data/spec/integration/faces/plugin_spec.rb +1 -1
- data/spec/integration/file_bucket/file_spec.rb +2 -4
- data/spec/integration/file_serving/content_spec.rb +0 -1
- data/spec/integration/file_serving/fileset_spec.rb +0 -1
- data/spec/integration/file_serving/metadata_spec.rb +0 -1
- data/spec/integration/file_serving/terminus_helper_spec.rb +0 -1
- data/spec/integration/indirector/catalog/compiler_spec.rb +10 -11
- data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
- data/spec/integration/indirector/facts/facter_spec.rb +4 -5
- data/spec/integration/indirector/file_content/file_server_spec.rb +7 -8
- data/spec/integration/indirector/file_metadata/file_server_spec.rb +7 -8
- data/spec/integration/network/authconfig_spec.rb +23 -24
- data/spec/integration/network/formats_spec.rb +0 -1
- data/spec/integration/node/environment_spec.rb +0 -1
- data/spec/integration/node/facts_spec.rb +9 -10
- data/spec/integration/node_spec.rb +6 -7
- data/spec/integration/parser/catalog_spec.rb +1 -5
- data/spec/integration/parser/collection_spec.rb +1 -2
- 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 +4 -5
- data/spec/integration/provider/service/systemd_spec.rb +0 -2
- data/spec/integration/provider/service/windows_spec.rb +1 -2
- data/spec/integration/reference/providers_spec.rb +1 -2
- data/spec/integration/reports_spec.rb +1 -2
- data/spec/integration/resource/catalog_spec.rb +14 -17
- data/spec/integration/resource/type_collection_spec.rb +4 -5
- data/spec/integration/ssl/certificate_request_spec.rb +0 -1
- data/spec/integration/ssl/host_spec.rb +1 -2
- data/spec/integration/ssl/key_spec.rb +0 -1
- data/spec/integration/test/test_helper_spec.rb +0 -1
- data/spec/integration/transaction/report_spec.rb +6 -11
- data/spec/integration/transaction_spec.rb +18 -19
- data/spec/integration/type/exec_spec.rb +0 -1
- data/spec/integration/type/file_spec.rb +13 -14
- data/spec/integration/type/package_spec.rb +19 -23
- data/spec/integration/type/tidy_spec.rb +1 -2
- data/spec/integration/type_spec.rb +0 -1
- data/spec/integration/util/autoload_spec.rb +1 -2
- data/spec/integration/util/rdoc/parser_spec.rb +0 -1
- data/spec/integration/util/settings_spec.rb +0 -1
- data/spec/integration/util/windows/adsi_spec.rb +3 -5
- data/spec/integration/util/windows/principal_spec.rb +0 -1
- data/spec/integration/util/windows/process_spec.rb +4 -6
- data/spec/integration/util/windows/registry_spec.rb +41 -51
- data/spec/integration/util/windows/security_spec.rb +2 -4
- data/spec/integration/util/windows/user_spec.rb +18 -20
- data/spec/integration/util_spec.rb +4 -7
- data/spec/lib/puppet_spec/compiler.rb +1 -1
- data/spec/lib/puppet_spec/files.rb +0 -1
- data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
- data/spec/lib/puppet_spec/scope.rb +1 -2
- data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
- data/spec/shared_behaviours/file_server_terminus.rb +8 -9
- data/spec/shared_behaviours/file_serving.rb +6 -8
- data/spec/shared_behaviours/file_serving_model.rb +3 -5
- data/spec/shared_behaviours/hiera_indirections.rb +3 -4
- data/spec/shared_behaviours/iterative_functions.rb +0 -1
- data/spec/shared_behaviours/memory_terminus.rb +2 -2
- data/spec/shared_examples/rhel_package_provider.rb +112 -70
- data/spec/spec_helper.rb +10 -1
- data/spec/unit/agent/disabler_spec.rb +4 -5
- data/spec/unit/agent/locker_spec.rb +12 -13
- data/spec/unit/agent_spec.rb +80 -85
- data/spec/unit/application/agent_spec.rb +88 -93
- data/spec/unit/application/apply_spec.rb +82 -83
- data/spec/unit/application/config_spec.rb +0 -1
- data/spec/unit/application/describe_spec.rb +6 -7
- data/spec/unit/application/device_spec.rb +395 -419
- data/spec/unit/application/doc_spec.rb +44 -46
- data/spec/unit/application/face_base_spec.rb +61 -62
- data/spec/unit/application/facts_spec.rb +3 -4
- data/spec/unit/application/filebucket_spec.rb +66 -74
- data/spec/unit/application/indirection_base_spec.rb +8 -6
- data/spec/unit/application/lookup_spec.rb +26 -26
- data/spec/unit/application/resource_spec.rb +42 -48
- data/spec/unit/application/ssl_spec.rb +3 -3
- data/spec/unit/application_spec.rb +82 -92
- data/spec/unit/capability_spec.rb +6 -6
- data/spec/unit/certificate_factory_spec.rb +3 -5
- data/spec/unit/configurer/downloader_spec.rb +20 -21
- data/spec/unit/configurer/fact_handler_spec.rb +2 -3
- data/spec/unit/configurer/plugin_handler_spec.rb +41 -8
- data/spec/unit/configurer_spec.rb +189 -192
- data/spec/unit/confine/exists_spec.rb +17 -15
- data/spec/unit/confine/false_spec.rb +5 -6
- data/spec/unit/confine/feature_spec.rb +7 -5
- data/spec/unit/confine/true_spec.rb +5 -6
- data/spec/unit/confine/variable_spec.rb +14 -15
- data/spec/unit/confine_collection_spec.rb +28 -29
- data/spec/unit/confine_spec.rb +13 -14
- data/spec/unit/confiner_spec.rb +10 -11
- data/spec/unit/context/trusted_information_spec.rb +1 -1
- data/spec/unit/daemon_spec.rb +35 -36
- data/spec/unit/data_providers/function_data_provider_spec.rb +0 -1
- data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -1
- data/spec/unit/datatypes_spec.rb +3 -4
- data/spec/unit/defaults_spec.rb +18 -13
- data/spec/unit/environments_spec.rb +7 -7
- data/spec/unit/etc_spec.rb +30 -32
- data/spec/unit/external/pson_spec.rb +0 -1
- data/spec/unit/face/catalog_spec.rb +0 -1
- data/spec/unit/face/config_spec.rb +31 -35
- data/spec/unit/face/epp_face_spec.rb +3 -4
- data/spec/unit/face/facts_spec.rb +5 -6
- data/spec/unit/face/generate_spec.rb +4 -5
- data/spec/unit/face/help_spec.rb +7 -8
- data/spec/unit/face/key_spec.rb +0 -1
- data/spec/unit/face/man_spec.rb +1 -2
- data/spec/unit/face/module/install_spec.rb +3 -5
- data/spec/unit/face/module/list_spec.rb +2 -12
- data/spec/unit/face/module/search_spec.rb +11 -9
- data/spec/unit/face/module/uninstall_spec.rb +4 -8
- data/spec/unit/face/node_spec.rb +23 -24
- data/spec/unit/face/parser_spec.rb +3 -3
- data/spec/unit/face/plugin_spec.rb +36 -9
- data/spec/unit/face/status_spec.rb +0 -1
- data/spec/unit/file_bucket/dipper_spec.rb +24 -20
- data/spec/unit/file_bucket/file_spec.rb +0 -2
- data/spec/unit/file_serving/base_spec.rb +14 -15
- data/spec/unit/file_serving/configuration/parser_spec.rb +27 -28
- data/spec/unit/file_serving/configuration_spec.rb +63 -66
- data/spec/unit/file_serving/content_spec.rb +10 -11
- data/spec/unit/file_serving/fileset_spec.rb +63 -58
- data/spec/unit/file_serving/http_metadata_spec.rb +8 -7
- data/spec/unit/file_serving/metadata_spec.rb +36 -36
- data/spec/unit/file_serving/mount/file_spec.rb +31 -32
- data/spec/unit/file_serving/mount/locales_spec.rb +23 -24
- data/spec/unit/file_serving/mount/modules_spec.rb +14 -15
- data/spec/unit/file_serving/mount/pluginfacts_spec.rb +23 -24
- data/spec/unit/file_serving/mount/plugins_spec.rb +23 -24
- data/spec/unit/file_serving/mount/tasks_spec.rb +14 -15
- data/spec/unit/file_serving/mount_spec.rb +0 -1
- data/spec/unit/file_serving/terminus_helper_spec.rb +37 -42
- data/spec/unit/file_serving/terminus_selector_spec.rb +12 -13
- 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 +13 -14
- data/spec/unit/forge/module_release_spec.rb +18 -18
- data/spec/unit/forge/repository_spec.rb +29 -30
- data/spec/unit/forge_spec.rb +15 -11
- data/spec/unit/functions/binary_file_spec.rb +3 -3
- data/spec/unit/functions/contain_spec.rb +0 -2
- data/spec/unit/functions/defined_spec.rb +0 -1
- 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 +0 -4
- data/spec/unit/functions/lookup_fixture_spec.rb +0 -1
- data/spec/unit/functions/lookup_spec.rb +1 -2
- data/spec/unit/functions/module_directory_spec.rb +12 -12
- data/spec/unit/functions/require_spec.rb +0 -3
- data/spec/unit/functions/shared.rb +5 -8
- data/spec/unit/functions/versioncmp_spec.rb +1 -2
- data/spec/unit/functions4_spec.rb +9 -10
- 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 +0 -2
- data/spec/unit/graph/relationship_graph_spec.rb +1 -2
- data/spec/unit/graph/simple_graph_spec.rb +9 -10
- data/spec/unit/hiera_puppet_spec.rb +20 -20
- data/spec/unit/indirector/catalog/compiler_spec.rb +147 -149
- data/spec/unit/indirector/catalog/json_spec.rb +1 -2
- data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -1
- data/spec/unit/indirector/catalog/rest_spec.rb +0 -1
- data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -1
- data/spec/unit/indirector/catalog/yaml_spec.rb +0 -1
- data/spec/unit/indirector/certificate/file_spec.rb +0 -1
- data/spec/unit/indirector/certificate/rest_spec.rb +8 -10
- data/spec/unit/indirector/certificate_request/file_spec.rb +0 -1
- data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -1
- data/spec/unit/indirector/direct_file_server_spec.rb +17 -18
- data/spec/unit/indirector/envelope_spec.rb +1 -2
- data/spec/unit/indirector/exec_spec.rb +4 -5
- data/spec/unit/indirector/face_spec.rb +9 -9
- data/spec/unit/indirector/facts/facter_spec.rb +37 -43
- data/spec/unit/indirector/facts/network_device_spec.rb +8 -9
- data/spec/unit/indirector/facts/rest_spec.rb +7 -8
- data/spec/unit/indirector/facts/store_configs_spec.rb +0 -1
- data/spec/unit/indirector/facts/yaml_spec.rb +0 -1
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +3 -4
- data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -1
- data/spec/unit/indirector/file_bucket_file/selector_spec.rb +4 -5
- data/spec/unit/indirector/file_content/file_server_spec.rb +0 -1
- data/spec/unit/indirector/file_content/file_spec.rb +0 -1
- data/spec/unit/indirector/file_content/rest_spec.rb +0 -1
- data/spec/unit/indirector/file_content/selector_spec.rb +0 -1
- data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -1
- data/spec/unit/indirector/file_metadata/file_spec.rb +12 -13
- data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -1
- data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -1
- data/spec/unit/indirector/file_server_spec.rb +87 -87
- data/spec/unit/indirector/indirection_spec.rb +242 -226
- data/spec/unit/indirector/json_spec.rb +7 -9
- data/spec/unit/indirector/key/file_spec.rb +21 -22
- data/spec/unit/indirector/memory_spec.rb +6 -7
- data/spec/unit/indirector/msgpack_spec.rb +7 -9
- data/spec/unit/indirector/node/exec_spec.rb +2 -3
- data/spec/unit/indirector/node/memory_spec.rb +2 -4
- data/spec/unit/indirector/node/msgpack_spec.rb +0 -1
- data/spec/unit/indirector/node/plain_spec.rb +2 -4
- data/spec/unit/indirector/node/rest_spec.rb +0 -1
- data/spec/unit/indirector/node/store_configs_spec.rb +0 -1
- data/spec/unit/indirector/node/yaml_spec.rb +0 -1
- data/spec/unit/indirector/none_spec.rb +5 -5
- data/spec/unit/indirector/plain_spec.rb +7 -8
- data/spec/unit/indirector/report/msgpack_spec.rb +0 -1
- data/spec/unit/indirector/report/processor_spec.rb +21 -22
- data/spec/unit/indirector/report/rest_spec.rb +11 -12
- data/spec/unit/indirector/report/yaml_spec.rb +0 -1
- data/spec/unit/indirector/request_spec.rb +11 -12
- data/spec/unit/indirector/resource/ral_spec.rb +46 -54
- data/spec/unit/indirector/resource/store_configs_spec.rb +0 -1
- data/spec/unit/indirector/rest_spec.rb +113 -110
- data/spec/unit/indirector/ssl_file_spec.rb +64 -65
- data/spec/unit/indirector/status/local_spec.rb +0 -1
- data/spec/unit/indirector/status/rest_spec.rb +0 -1
- data/spec/unit/indirector/store_configs_spec.rb +0 -1
- data/spec/unit/indirector/terminus_spec.rb +27 -27
- data/spec/unit/indirector/yaml_spec.rb +5 -6
- data/spec/unit/indirector_spec.rb +1 -2
- data/spec/unit/info_service_spec.rb +1 -1
- data/spec/unit/interface/action_builder_spec.rb +0 -1
- data/spec/unit/interface/action_manager_spec.rb +0 -1
- data/spec/unit/interface/action_spec.rb +2 -3
- data/spec/unit/interface/documentation_spec.rb +0 -1
- data/spec/unit/interface/face_collection_spec.rb +19 -12
- data/spec/unit/interface_spec.rb +3 -3
- data/spec/unit/man_spec.rb +3 -4
- data/spec/unit/module_spec.rb +46 -51
- data/spec/unit/module_tool/applications/installer_spec.rb +10 -11
- data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
- data/spec/unit/module_tool/applications/uninstaller_spec.rb +1 -2
- 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 +12 -13
- data/spec/unit/module_tool_spec.rb +7 -12
- data/spec/unit/network/auth_config_parser_spec.rb +11 -13
- data/spec/unit/network/authconfig_spec.rb +17 -18
- data/spec/unit/network/authorization_spec.rb +4 -5
- data/spec/unit/network/authstore_spec.rb +0 -1
- data/spec/unit/network/format_handler_spec.rb +0 -1
- data/spec/unit/network/format_spec.rb +9 -10
- data/spec/unit/network/format_support_spec.rb +28 -29
- data/spec/unit/network/formats_spec.rb +4 -5
- data/spec/unit/network/http/api/indirected_routes_spec.rb +24 -29
- 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 +6 -7
- data/spec/unit/network/http/api_spec.rb +0 -2
- data/spec/unit/network/http/compression_spec.rb +21 -22
- data/spec/unit/network/http/connection_spec.rb +41 -36
- data/spec/unit/network/http/factory_spec.rb +5 -6
- data/spec/unit/network/http/handler_spec.rb +9 -18
- data/spec/unit/network/http/nocache_pool_spec.rb +6 -7
- data/spec/unit/network/http/pool_spec.rb +28 -29
- data/spec/unit/network/http/request_spec.rb +0 -2
- data/spec/unit/network/http/response_spec.rb +11 -13
- data/spec/unit/network/http/route_spec.rb +0 -1
- data/spec/unit/network/http/session_spec.rb +1 -2
- data/spec/unit/network/http/site_spec.rb +0 -1
- data/spec/unit/network/http_pool_spec.rb +18 -9
- data/spec/unit/network/http_spec.rb +0 -1
- data/spec/unit/network/resolver_spec.rb +25 -26
- data/spec/unit/network/rights_spec.rb +52 -53
- data/spec/unit/node/environment_spec.rb +14 -15
- data/spec/unit/node/facts_spec.rb +5 -7
- data/spec/unit/node_spec.rb +4 -10
- data/spec/unit/other/selinux_spec.rb +0 -1
- data/spec/unit/parameter/boolean_spec.rb +1 -2
- data/spec/unit/parameter/package_options_spec.rb +1 -2
- data/spec/unit/parameter/path_spec.rb +0 -1
- data/spec/unit/parameter/value_collection_spec.rb +0 -1
- data/spec/unit/parameter/value_spec.rb +0 -1
- data/spec/unit/parameter_spec.rb +9 -9
- data/spec/unit/parser/ast/block_expression_spec.rb +6 -8
- data/spec/unit/parser/ast/leaf_spec.rb +20 -21
- data/spec/unit/parser/compiler_spec.rb +84 -96
- data/spec/unit/parser/environment_compiler_spec.rb +7 -8
- data/spec/unit/parser/files_spec.rb +0 -1
- data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
- data/spec/unit/parser/functions/digest_spec.rb +0 -1
- data/spec/unit/parser/functions/fail_spec.rb +1 -2
- data/spec/unit/parser/functions/file_spec.rb +13 -14
- data/spec/unit/parser/functions/fqdn_rand_spec.rb +5 -6
- data/spec/unit/parser/functions/generate_spec.rb +7 -8
- data/spec/unit/parser/functions/inline_template_spec.rb +0 -1
- data/spec/unit/parser/functions/regsubst_spec.rb +0 -1
- data/spec/unit/parser/functions/scanf_spec.rb +0 -1
- data/spec/unit/parser/functions/shellquote_spec.rb +0 -1
- data/spec/unit/parser/functions/split_spec.rb +0 -1
- data/spec/unit/parser/functions/sprintf_spec.rb +0 -1
- data/spec/unit/parser/functions/tag_spec.rb +1 -2
- data/spec/unit/parser/functions/tagged_spec.rb +2 -3
- data/spec/unit/parser/functions/template_spec.rb +13 -13
- data/spec/unit/parser/functions/versioncmp_spec.rb +1 -2
- data/spec/unit/parser/functions_spec.rb +6 -7
- data/spec/unit/parser/relationship_spec.rb +0 -1
- data/spec/unit/parser/resource_spec.rb +42 -42
- data/spec/unit/parser/scope_spec.rb +39 -35
- data/spec/unit/parser/templatewrapper_spec.rb +11 -12
- data/spec/unit/parser/type_loader_spec.rb +17 -19
- data/spec/unit/pops/adaptable_spec.rb +0 -1
- data/spec/unit/pops/benchmark_spec.rb +0 -1
- data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -1
- data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -1
- data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -1
- data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -1
- data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -1
- data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -1
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +10 -11
- data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -1
- data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -1
- data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -1
- data/spec/unit/pops/evaluator/variables_spec.rb +0 -1
- data/spec/unit/pops/factory_spec.rb +3 -4
- data/spec/unit/pops/issues_spec.rb +19 -20
- data/spec/unit/pops/loaders/loader_spec.rb +8 -4
- data/spec/unit/pops/loaders/loaders_spec.rb +31 -28
- data/spec/unit/pops/lookup/context_spec.rb +0 -1
- data/spec/unit/pops/lookup/interpolation_spec.rb +2 -3
- data/spec/unit/pops/merge_strategy_spec.rb +0 -1
- data/spec/unit/pops/migration_spec.rb +3 -5
- data/spec/unit/pops/model/model_spec.rb +0 -1
- data/spec/unit/pops/model/pn_transformer_spec.rb +0 -1
- data/spec/unit/pops/parser/locator_spec.rb +3 -6
- data/spec/unit/pops/parser/parse_application_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_calls_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_capabilities_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_containers_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_plan_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_resource_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_site_spec.rb +0 -1
- data/spec/unit/pops/parser/pn_parser_spec.rb +0 -1
- data/spec/unit/pops/pn_spec.rb +0 -1
- data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -1
- 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/type_asserter_spec.rb +2 -2
- data/spec/unit/pops/types/type_calculator_spec.rb +30 -30
- data/spec/unit/pops/types/type_parser_spec.rb +13 -13
- data/spec/unit/pops/validator/validator_spec.rb +1 -2
- data/spec/unit/pops/visitor_spec.rb +0 -1
- data/spec/unit/property/boolean_spec.rb +1 -1
- data/spec/unit/property/ensure_spec.rb +0 -1
- data/spec/unit/property/keyvalue_spec.rb +32 -34
- data/spec/unit/property/list_spec.rb +26 -27
- data/spec/unit/property/ordered_list_spec.rb +10 -14
- data/spec/unit/property_spec.rb +42 -43
- data/spec/unit/provider/aix_object_spec.rb +47 -45
- data/spec/unit/provider/command_spec.rb +9 -9
- data/spec/unit/provider/exec/posix_spec.rb +6 -7
- data/spec/unit/provider/exec/shell_spec.rb +0 -1
- data/spec/unit/provider/exec/windows_spec.rb +2 -4
- data/spec/unit/provider/exec_spec.rb +0 -1
- data/spec/unit/provider/file/posix_spec.rb +22 -24
- data/spec/unit/provider/file/windows_spec.rb +15 -17
- data/spec/unit/provider/group/aix_spec.rb +3 -2
- data/spec/unit/provider/group/groupadd_spec.rb +30 -26
- 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 +54 -54
- data/spec/unit/provider/ldap_spec.rb +61 -62
- data/spec/unit/provider/nameservice/directoryservice_spec.rb +35 -36
- data/spec/unit/provider/nameservice_spec.rb +38 -40
- 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 +44 -27
- data/spec/unit/provider/package/aptitude_spec.rb +6 -7
- data/spec/unit/provider/package/aptrpm_spec.rb +7 -12
- data/spec/unit/provider/package/base_spec.rb +4 -4
- data/spec/unit/provider/package/dnf_spec.rb +18 -20
- data/spec/unit/provider/package/dpkg_spec.rb +52 -52
- data/spec/unit/provider/package/freebsd_spec.rb +11 -11
- data/spec/unit/provider/package/gem_spec.rb +51 -43
- data/spec/unit/provider/package/hpux_spec.rb +8 -8
- data/spec/unit/provider/package/macports_spec.rb +46 -42
- data/spec/unit/provider/package/nim_spec.rb +30 -39
- data/spec/unit/provider/package/openbsd_spec.rb +36 -39
- data/spec/unit/provider/package/opkg_spec.rb +23 -26
- data/spec/unit/provider/package/pacman_spec.rb +97 -118
- data/spec/unit/provider/package/pip_spec.rb +71 -72
- data/spec/unit/provider/package/pkg_spec.rb +109 -109
- data/spec/unit/provider/package/pkgdmg_spec.rb +65 -63
- data/spec/unit/provider/package/pkgin_spec.rb +10 -8
- data/spec/unit/provider/package/pkgng_spec.rb +17 -18
- data/spec/unit/provider/package/pkgutil_spec.rb +45 -49
- data/spec/unit/provider/package/portage_spec.rb +70 -74
- data/spec/unit/provider/package/puppet_gem_spec.rb +28 -8
- data/spec/unit/provider/package/rpm_spec.rb +53 -64
- data/spec/unit/provider/package/sun_spec.rb +16 -18
- data/spec/unit/provider/package/tdnf_spec.rb +2 -2
- data/spec/unit/provider/package/up2date_spec.rb +2 -4
- data/spec/unit/provider/package/urpmi_spec.rb +15 -17
- data/spec/unit/provider/package/windows/exe_package_spec.rb +12 -15
- data/spec/unit/provider/package/windows/msi_package_spec.rb +19 -22
- data/spec/unit/provider/package/windows/package_spec.rb +37 -42
- data/spec/unit/provider/package/windows_spec.rb +36 -32
- 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 +44 -45
- data/spec/unit/provider/service/base_spec.rb +4 -5
- data/spec/unit/provider/service/bsd_spec.rb +27 -29
- 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 +50 -55
- data/spec/unit/provider/service/init_spec.rb +53 -52
- data/spec/unit/provider/service/launchd_spec.rb +138 -116
- data/spec/unit/provider/service/openbsd_spec.rb +50 -50
- data/spec/unit/provider/service/openrc_spec.rb +43 -45
- data/spec/unit/provider/service/openwrt_spec.rb +26 -31
- data/spec/unit/provider/service/rcng_spec.rb +14 -14
- data/spec/unit/provider/service/redhat_spec.rb +45 -43
- data/spec/unit/provider/service/runit_spec.rb +29 -27
- data/spec/unit/provider/service/smf_spec.rb +74 -66
- data/spec/unit/provider/service/src_spec.rb +46 -47
- data/spec/unit/provider/service/systemd_spec.rb +104 -113
- data/spec/unit/provider/service/upstart_spec.rb +74 -71
- data/spec/unit/provider/service/windows_spec.rb +33 -41
- data/spec/unit/provider/user/aix_spec.rb +31 -31
- data/spec/unit/provider/user/directoryservice_spec.rb +109 -114
- 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 +10 -12
- data/spec/unit/provider/user/pw_spec.rb +37 -35
- data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
- data/spec/unit/provider/user/useradd_spec.rb +93 -92
- data/spec/unit/provider/user/windows_adsi_spec.rb +59 -60
- data/spec/unit/provider_spec.rb +35 -35
- data/spec/unit/puppet_pal_2pec.rb +4 -5
- data/spec/unit/puppet_pal_spec.rb +0 -1
- data/spec/unit/puppet_spec.rb +6 -7
- data/spec/unit/relationship_spec.rb +0 -1
- data/spec/unit/reports/http_spec.rb +21 -23
- data/spec/unit/reports/store_spec.rb +3 -4
- data/spec/unit/reports_spec.rb +12 -14
- data/spec/unit/resource/capability_finder_spec.rb +15 -17
- data/spec/unit/resource/catalog_spec.rb +72 -68
- data/spec/unit/resource/status_spec.rb +6 -8
- data/spec/unit/resource/type_collection_spec.rb +17 -18
- data/spec/unit/resource/type_spec.rb +34 -35
- data/spec/unit/resource_spec.rb +36 -32
- data/spec/unit/rest/client_spec.rb +58 -27
- data/spec/unit/rest/route_spec.rb +5 -5
- data/spec/unit/scheduler/job_spec.rb +0 -1
- data/spec/unit/scheduler/scheduler_spec.rb +0 -1
- data/spec/unit/scheduler/splay_job_spec.rb +1 -2
- 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 +0 -1
- data/spec/unit/settings/directory_setting_spec.rb +2 -7
- data/spec/unit/settings/duration_setting_spec.rb +1 -2
- data/spec/unit/settings/enum_setting_spec.rb +1 -1
- data/spec/unit/settings/environment_conf_spec.rb +4 -6
- data/spec/unit/settings/file_setting_spec.rb +44 -46
- data/spec/unit/settings/path_setting_spec.rb +1 -2
- data/spec/unit/settings/priority_setting_spec.rb +1 -2
- data/spec/unit/settings/string_setting_spec.rb +14 -15
- data/spec/unit/settings/terminus_setting_spec.rb +1 -2
- data/spec/unit/settings/value_translator_spec.rb +0 -1
- data/spec/unit/settings_spec.rb +228 -235
- data/spec/unit/ssl/base_spec.rb +14 -15
- data/spec/unit/ssl/certificate_request_spec.rb +62 -58
- data/spec/unit/ssl/certificate_spec.rb +23 -25
- data/spec/unit/ssl/digest_spec.rb +0 -1
- data/spec/unit/ssl/host_spec.rb +166 -149
- data/spec/unit/ssl/key_spec.rb +30 -31
- data/spec/unit/ssl/validator_spec.rb +38 -39
- data/spec/unit/task_spec.rb +44 -45
- data/spec/unit/transaction/additional_resource_generator_spec.rb +3 -5
- data/spec/unit/transaction/event_manager_spec.rb +87 -88
- data/spec/unit/transaction/event_spec.rb +16 -15
- data/spec/unit/transaction/persistence_spec.rb +16 -17
- data/spec/unit/transaction/report_spec.rb +11 -12
- data/spec/unit/transaction/resource_harness_spec.rb +28 -33
- data/spec/unit/transaction_spec.rb +100 -101
- data/spec/unit/type/component_spec.rb +0 -1
- data/spec/unit/type/exec_spec.rb +60 -56
- data/spec/unit/type/file/checksum_spec.rb +9 -10
- data/spec/unit/type/file/checksum_value_spec.rb +31 -32
- data/spec/unit/type/file/content_spec.rb +58 -61
- data/spec/unit/type/file/ctime_spec.rb +0 -1
- data/spec/unit/type/file/ensure_spec.rb +12 -13
- data/spec/unit/type/file/group_spec.rb +5 -7
- data/spec/unit/type/file/mode_spec.rb +4 -6
- data/spec/unit/type/file/mtime_spec.rb +0 -1
- data/spec/unit/type/file/owner_spec.rb +6 -8
- data/spec/unit/type/file/selinux_spec.rb +17 -19
- data/spec/unit/type/file/source_spec.rb +104 -101
- data/spec/unit/type/file/type_spec.rb +0 -1
- data/spec/unit/type/file_spec.rb +195 -185
- data/spec/unit/type/filebucket_spec.rb +4 -5
- data/spec/unit/type/group_spec.rb +6 -8
- data/spec/unit/type/noop_metaparam_spec.rb +1 -2
- data/spec/unit/type/package/package_settings_spec.rb +44 -23
- data/spec/unit/type/package_spec.rb +56 -57
- data/spec/unit/type/resources_spec.rb +72 -74
- data/spec/unit/type/schedule_spec.rb +24 -26
- data/spec/unit/type/service_spec.rb +48 -48
- data/spec/unit/type/stage_spec.rb +0 -1
- data/spec/unit/type/tidy_spec.rb +61 -62
- data/spec/unit/type/user_spec.rb +24 -25
- data/spec/unit/type/whit_spec.rb +0 -1
- data/spec/unit/type_spec.rb +55 -54
- data/spec/unit/util/at_fork_spec.rb +18 -19
- data/spec/unit/util/autoload_spec.rb +55 -56
- data/spec/unit/util/backups_spec.rb +34 -35
- data/spec/unit/util/character_encoding_spec.rb +5 -5
- data/spec/unit/util/checksums_spec.rb +38 -39
- data/spec/unit/util/colors_spec.rb +1 -2
- data/spec/unit/util/command_line_spec.rb +24 -25
- data/spec/unit/util/constant_inflector_spec.rb +0 -1
- data/spec/unit/util/diff_spec.rb +7 -8
- data/spec/unit/util/errors_spec.rb +0 -1
- data/spec/unit/util/execution_spec.rb +185 -161
- data/spec/unit/util/execution_stub_spec.rb +0 -1
- data/spec/unit/util/feature_spec.rb +21 -14
- 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 +26 -31
- data/spec/unit/util/json_lockfile_spec.rb +3 -5
- data/spec/unit/util/ldap/connection_spec.rb +26 -25
- data/spec/unit/util/ldap/generator_spec.rb +0 -1
- data/spec/unit/util/ldap/manager_spec.rb +102 -101
- data/spec/unit/util/lockfile_spec.rb +0 -1
- data/spec/unit/util/log/destinations_spec.rb +30 -33
- data/spec/unit/util/log_spec.rb +35 -36
- data/spec/unit/util/logging_spec.rb +58 -72
- data/spec/unit/util/metric_spec.rb +0 -1
- data/spec/unit/util/monkey_patches_spec.rb +7 -9
- data/spec/unit/util/multi_match_spec.rb +0 -1
- data/spec/unit/util/network_device/config_spec.rb +0 -1
- data/spec/unit/util/network_device/transport/base_spec.rb +5 -6
- data/spec/unit/util/network_device_spec.rb +7 -9
- data/spec/unit/util/package_spec.rb +0 -1
- data/spec/unit/util/pidlock_spec.rb +21 -22
- data/spec/unit/util/plist_spec.rb +40 -33
- data/spec/unit/util/posix_spec.rb +54 -51
- data/spec/unit/util/rdoc_spec.rb +9 -10
- data/spec/unit/util/reference_spec.rb +0 -1
- data/spec/unit/util/resource_template_spec.rb +20 -20
- data/spec/unit/util/retry_action_spec.rb +7 -8
- data/spec/unit/util/rubygems_spec.rb +7 -8
- data/spec/unit/util/run_mode_spec.rb +3 -4
- data/spec/unit/util/selinux_spec.rb +79 -72
- data/spec/unit/util/splayer_spec.rb +8 -9
- data/spec/unit/util/ssl_spec.rb +0 -1
- data/spec/unit/util/storage_spec.rb +3 -4
- data/spec/unit/util/suidmanager_spec.rb +45 -54
- data/spec/unit/util/symbolic_file_mode_spec.rb +0 -1
- data/spec/unit/util/tag_set_spec.rb +0 -1
- data/spec/unit/util/tagging_spec.rb +0 -1
- data/spec/unit/util/terminal_spec.rb +9 -10
- data/spec/unit/util/user_attr_spec.rb +1 -2
- data/spec/unit/util/warnings_spec.rb +3 -4
- data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
- data/spec/unit/util/watcher_spec.rb +51 -21
- data/spec/unit/util/windows/access_control_entry_spec.rb +0 -1
- data/spec/unit/util/windows/access_control_list_spec.rb +0 -1
- data/spec/unit/util/windows/adsi_spec.rb +136 -138
- data/spec/unit/util/windows/api_types_spec.rb +0 -1
- data/spec/unit/util/windows/eventlog_spec.rb +9 -12
- data/spec/unit/util/windows/file_spec.rb +0 -1
- data/spec/unit/util/windows/root_certs_spec.rb +0 -1
- data/spec/unit/util/windows/security_descriptor_spec.rb +0 -2
- data/spec/unit/util/windows/service_spec.rb +66 -68
- data/spec/unit/util/windows/sid_spec.rb +11 -13
- data/spec/unit/util/windows/string_spec.rb +0 -1
- data/spec/unit/util_spec.rb +55 -57
- data/spec/unit/version_spec.rb +6 -6
- metadata +2 -2
@@ -1,4 +1,3 @@
|
|
1
|
-
#! /usr/bin/env ruby
|
2
1
|
require 'spec_helper'
|
3
2
|
require 'puppet_spec/compiler'
|
4
3
|
require 'puppet/parser/functions'
|
@@ -7,7 +6,6 @@ require 'matchers/resource'
|
|
7
6
|
require 'matchers/include_in_order'
|
8
7
|
require 'unit/functions/shared'
|
9
8
|
|
10
|
-
|
11
9
|
describe 'The "require" function' do
|
12
10
|
include PuppetSpec::Compiler
|
13
11
|
include ContainmentMatchers
|
@@ -81,5 +79,4 @@ describe 'The "require" function' do
|
|
81
79
|
it_should_behave_like 'all functions transforming relative to absolute names', :require
|
82
80
|
it_should_behave_like 'an inclusion function, regardless of the type of class reference,', :require
|
83
81
|
it_should_behave_like 'an inclusion function, when --tasks is on,', :require
|
84
|
-
|
85
82
|
end
|
@@ -2,19 +2,19 @@ shared_examples_for 'all functions transforming relative to absolute names' do |
|
|
2
2
|
before(:each) do
|
3
3
|
# mock that the class 'myclass' exists which are needed for the 'require' functions
|
4
4
|
# as it checks the existence of the required class
|
5
|
-
@klass =
|
6
|
-
@scope.environment.known_resource_types.
|
5
|
+
@klass = double('class', :name => "myclass")
|
6
|
+
allow(@scope.environment.known_resource_types).to receive(:find_hostclass).and_return(@klass)
|
7
7
|
@resource = Puppet::Parser::Resource.new(:file, "/my/file", :scope => @scope, :source => "source")
|
8
|
-
@scope.
|
8
|
+
allow(@scope).to receive(:resource).and_return(@resource)
|
9
9
|
end
|
10
10
|
|
11
11
|
it 'accepts a Class[name] type' do
|
12
|
-
@scope.compiler.
|
12
|
+
expect(@scope.compiler).to receive(:evaluate_classes).with(["::myclass"], @scope, false)
|
13
13
|
@scope.call_function(func_name, [Puppet::Pops::Types::TypeFactory.host_class('myclass')])
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'accepts a Resource[class, name] type' do
|
17
|
-
@scope.compiler.
|
17
|
+
expect(@scope.compiler).to receive(:evaluate_classes).with(["::myclass"], @scope, false)
|
18
18
|
@scope.call_function(func_name, [Puppet::Pops::Types::TypeFactory.resource('class', 'myclass')])
|
19
19
|
end
|
20
20
|
|
@@ -45,7 +45,6 @@ shared_examples_for 'all functions transforming relative to absolute names' do |
|
|
45
45
|
end
|
46
46
|
|
47
47
|
shared_examples_for 'an inclusion function, regardless of the type of class reference,' do |function|
|
48
|
-
|
49
48
|
it "and #{function} a class absolutely, even when a relative namespaced class of the same name is present" do
|
50
49
|
catalog = compile_to_catalog(<<-MANIFEST)
|
51
50
|
class foo {
|
@@ -81,7 +80,6 @@ shared_examples_for 'an inclusion function, regardless of the type of class refe
|
|
81
80
|
MANIFEST
|
82
81
|
expect(catalog.classes).to include('foo','bar')
|
83
82
|
end
|
84
|
-
|
85
83
|
end
|
86
84
|
|
87
85
|
shared_examples_for 'an inclusion function, when --tasks is on,' do |function|
|
@@ -94,4 +92,3 @@ shared_examples_for 'an inclusion function, when --tasks is on,' do |function|
|
|
94
92
|
end.to raise_error(Puppet::ParseError, /is only available when compiling a catalog/)
|
95
93
|
end
|
96
94
|
end
|
97
|
-
|
@@ -3,7 +3,6 @@ require 'puppet/pops'
|
|
3
3
|
require 'puppet/loaders'
|
4
4
|
|
5
5
|
describe "the versioncmp function" do
|
6
|
-
|
7
6
|
before(:each) do
|
8
7
|
loaders = Puppet::Pops::Loaders.new(Puppet::Node::Environment.create(:testing, []))
|
9
8
|
Puppet.push_context({:loaders => loaders}, "test-examples")
|
@@ -28,7 +27,7 @@ describe "the versioncmp function" do
|
|
28
27
|
end
|
29
28
|
|
30
29
|
it "should call Puppet::Util::Package.versioncmp (included in scope)" do
|
31
|
-
Puppet::Util::Package.
|
30
|
+
expect(Puppet::Util::Package).to receive(:versioncmp).with('1.2', '1.3').and_return(-1)
|
32
31
|
|
33
32
|
expect(versioncmp('1.2', '1.3')).to eq(-1)
|
34
33
|
end
|
@@ -210,12 +210,12 @@ describe 'the 4x function api' do
|
|
210
210
|
end
|
211
211
|
|
212
212
|
it 'a function can not be created with parameters declared after a repeated parameter' do
|
213
|
-
expect { create_function_with_param_after_repeated }.to raise_error(ArgumentError,
|
213
|
+
expect { create_function_with_param_after_repeated }.to raise_error(ArgumentError,
|
214
214
|
/function 't1'.*Parameters cannot be added after a repeated parameter/)
|
215
215
|
end
|
216
216
|
|
217
217
|
it 'a function can not be created with required parameters declared after optional ones' do
|
218
|
-
expect { create_function_with_rq_after_opt }.to raise_error(ArgumentError,
|
218
|
+
expect { create_function_with_rq_after_opt }.to raise_error(ArgumentError,
|
219
219
|
/function 't1'.*A required parameter cannot be added after an optional parameter/)
|
220
220
|
end
|
221
221
|
|
@@ -464,7 +464,7 @@ describe 'the 4x function api' do
|
|
464
464
|
# evaluate a puppet call
|
465
465
|
source = "testing::test(10) |$x| { $x+1 }"
|
466
466
|
program = parser.parse_string(source, __FILE__)
|
467
|
-
Puppet::Pops::Adapters::LoaderAdapter.
|
467
|
+
expect(Puppet::Pops::Adapters::LoaderAdapter).to receive(:loader_for_model_object).at_least(:once).and_return(the_loader)
|
468
468
|
expect(parser.evaluate(scope, program)).to eql(11)
|
469
469
|
end
|
470
470
|
end
|
@@ -538,7 +538,7 @@ describe 'the 4x function api' do
|
|
538
538
|
CODE
|
539
539
|
the_loader.add_function('testing::test', fc.new({}, the_loader))
|
540
540
|
program = parser.parse_string('testing::test(10)', __FILE__)
|
541
|
-
Puppet::Pops::Adapters::LoaderAdapter.
|
541
|
+
expect(Puppet::Pops::Adapters::LoaderAdapter).to receive(:loader_for_model_object).and_return(the_loader)
|
542
542
|
expect { parser.evaluate({}, program) }.to raise_error(Puppet::Error,
|
543
543
|
/value returned from function 'test' has wrong type, expects a String value, got Integer/)
|
544
544
|
end
|
@@ -560,7 +560,7 @@ describe 'the 4x function api' do
|
|
560
560
|
CODE
|
561
561
|
the_loader.add_function('testing::test', fc.new({}, the_loader))
|
562
562
|
program = parser.parse_string('testing::test(10)', __FILE__)
|
563
|
-
Puppet::Pops::Adapters::LoaderAdapter.
|
563
|
+
expect(Puppet::Pops::Adapters::LoaderAdapter).to receive(:loader_for_model_object).and_return(the_loader)
|
564
564
|
expect(parser.evaluate({}, program)).to eql(10)
|
565
565
|
end
|
566
566
|
|
@@ -579,7 +579,7 @@ describe 'the 4x function api' do
|
|
579
579
|
CODE
|
580
580
|
the_loader.add_function('testing::test', fc.new({}, the_loader))
|
581
581
|
program = parser.parse_string('testing::test(10)', __FILE__)
|
582
|
-
Puppet::Pops::Adapters::LoaderAdapter.
|
582
|
+
expect(Puppet::Pops::Adapters::LoaderAdapter).to receive(:loader_for_model_object).and_return(the_loader)
|
583
583
|
expect { parser.evaluate({}, program) }.to raise_error(Puppet::Error, /parameter 'x' references an unresolved type 'MyAlias'/)
|
584
584
|
end
|
585
585
|
|
@@ -601,7 +601,7 @@ describe 'the 4x function api' do
|
|
601
601
|
CODE
|
602
602
|
the_loader.add_function('testing::test', fc.new({}, the_loader))
|
603
603
|
program = parser.parse_string('testing::test([10,20])', __FILE__)
|
604
|
-
Puppet::Pops::Adapters::LoaderAdapter.
|
604
|
+
expect(Puppet::Pops::Adapters::LoaderAdapter).to receive(:loader_for_model_object).and_return(the_loader)
|
605
605
|
expect(parser.evaluate({}, program)).to eq([10,20])
|
606
606
|
end
|
607
607
|
|
@@ -624,7 +624,7 @@ describe 'the 4x function api' do
|
|
624
624
|
CODE
|
625
625
|
the_loader.add_function('testing::test', fc.new({}, the_loader))
|
626
626
|
program = parser.parse_string("testing::test({'x' => [10,20]})", __FILE__)
|
627
|
-
Puppet::Pops::Adapters::LoaderAdapter.
|
627
|
+
expect(Puppet::Pops::Adapters::LoaderAdapter).to receive(:loader_for_model_object).and_return(the_loader)
|
628
628
|
expect(parser.evaluate({}, program)).to eq({'x' => [10,20]})
|
629
629
|
end
|
630
630
|
|
@@ -646,13 +646,12 @@ describe 'the 4x function api' do
|
|
646
646
|
CODE
|
647
647
|
the_loader.add_function('testing::test', fc.new({}, the_loader))
|
648
648
|
program = parser.parse_string("testing::test({'x' => {'y' => 'n'}})", __FILE__)
|
649
|
-
Puppet::Pops::Adapters::LoaderAdapter.
|
649
|
+
expect(Puppet::Pops::Adapters::LoaderAdapter).to receive(:loader_for_model_object).and_return(the_loader)
|
650
650
|
expect(parser.evaluate({}, program)).to eq({'x' => {'y' => 'n'}})
|
651
651
|
end
|
652
652
|
end
|
653
653
|
end
|
654
654
|
|
655
|
-
|
656
655
|
def create_noargs_function_class
|
657
656
|
Puppet::Functions.create_function('test') do
|
658
657
|
def test()
|
@@ -19,7 +19,7 @@ describe Puppet::GettextConfig do
|
|
19
19
|
end
|
20
20
|
|
21
21
|
before(:each) do
|
22
|
-
Puppet::GettextConfig.
|
22
|
+
allow(Puppet::GettextConfig).to receive(:gettext_loaded?).and_return(true)
|
23
23
|
end
|
24
24
|
|
25
25
|
after(:each) do
|
@@ -29,7 +29,7 @@ describe Puppet::GettextConfig do
|
|
29
29
|
|
30
30
|
describe 'setting and getting the locale' do
|
31
31
|
it 'should return "en" when gettext is unavailable' do
|
32
|
-
Puppet::GettextConfig.
|
32
|
+
allow(Puppet::GettextConfig).to receive(:gettext_loaded?).and_return(false)
|
33
33
|
|
34
34
|
expect(Puppet::GettextConfig.current_locale).to eq('en')
|
35
35
|
end
|
@@ -67,7 +67,7 @@ describe Puppet::GettextConfig do
|
|
67
67
|
|
68
68
|
context 'when given a valid locale file location' do
|
69
69
|
it 'should return true' do
|
70
|
-
Puppet::GettextConfig.
|
70
|
+
expect(Puppet::GettextConfig).to receive(:add_repository_to_domain).with('puppet', local_path, :po, anything)
|
71
71
|
|
72
72
|
expect(Puppet::GettextConfig.load_translations('puppet', local_path, :po)).to be true
|
73
73
|
end
|
@@ -88,7 +88,7 @@ describe Puppet::GettextConfig do
|
|
88
88
|
end
|
89
89
|
|
90
90
|
it 'should add puppet translations to the default text domain' do
|
91
|
-
Puppet::GettextConfig.
|
91
|
+
expect(Puppet::GettextConfig).to receive(:load_translations).with('puppet', local_path, :po, Puppet::GettextConfig::DEFAULT_TEXT_DOMAIN).and_return(true)
|
92
92
|
|
93
93
|
Puppet::GettextConfig.create_default_text_domain
|
94
94
|
expect(Puppet::GettextConfig.loaded_text_domains).to include(Puppet::GettextConfig::DEFAULT_TEXT_DOMAIN)
|
@@ -16,7 +16,7 @@ describe Puppet::ModuleTranslations do
|
|
16
16
|
:metadata => {
|
17
17
|
:author => 'foo'
|
18
18
|
},
|
19
|
-
:environment =>
|
19
|
+
:environment => double("environment"))
|
20
20
|
}
|
21
21
|
|
22
22
|
let(:module_b) { PuppetSpec::Modules.create(
|
@@ -25,13 +25,13 @@ describe Puppet::ModuleTranslations do
|
|
25
25
|
:metadata => {
|
26
26
|
:author => 'foo'
|
27
27
|
},
|
28
|
-
:environment =>
|
28
|
+
:environment => double("environment"))
|
29
29
|
}
|
30
30
|
|
31
31
|
it "should attempt to load translations only for modules that have them" do
|
32
|
-
module_a.
|
33
|
-
module_b.
|
34
|
-
Puppet::GettextConfig.
|
32
|
+
expect(module_a).to receive(:has_translations?).and_return(false)
|
33
|
+
expect(module_b).to receive(:has_translations?).and_return(true)
|
34
|
+
expect(Puppet::GettextConfig).to receive(:load_translations).with("foo-mod_b", File.join(modpath, "mod_b", "locales"), :po).and_return(true)
|
35
35
|
|
36
36
|
Puppet::ModuleTranslations.load_from_modulepath([module_a, module_b])
|
37
37
|
end
|
@@ -44,8 +44,8 @@ describe Puppet::ModuleTranslations do
|
|
44
44
|
}
|
45
45
|
|
46
46
|
it "should attempt to load translations for the current locale" do
|
47
|
-
Puppet::GettextConfig.
|
48
|
-
Puppet::GettextConfig.
|
47
|
+
expect(Puppet::GettextConfig).to receive(:current_locale).and_return("ja")
|
48
|
+
expect(Puppet::GettextConfig).to receive(:load_translations).with("foo-mod_a", File.join(vardir, "locales"), :po).and_return(true)
|
49
49
|
|
50
50
|
Puppet::ModuleTranslations.load_from_vardir(vardir)
|
51
51
|
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
#! /usr/bin/env ruby
|
2
1
|
require 'spec_helper'
|
3
2
|
require 'puppet/graph'
|
4
3
|
|
@@ -397,6 +396,6 @@ describe Puppet::Graph::RelationshipGraph do
|
|
397
396
|
end
|
398
397
|
|
399
398
|
def stub_vertex(name)
|
400
|
-
|
399
|
+
double("vertex #{name}", :ref => name)
|
401
400
|
end
|
402
401
|
end
|
@@ -1,4 +1,3 @@
|
|
1
|
-
#! /usr/bin/env ruby
|
2
1
|
require 'spec_helper'
|
3
2
|
require 'puppet/graph'
|
4
3
|
|
@@ -337,35 +336,35 @@ describe Puppet::Graph::SimpleGraph do
|
|
337
336
|
|
338
337
|
it "should report one-vertex loops" do
|
339
338
|
add_edges :a => :a
|
340
|
-
Puppet.
|
339
|
+
expect(Puppet).to receive(:err).with(/Found 1 dependency cycle:\n\(Notify\[a\] => Notify\[a\]\)/)
|
341
340
|
cycle = @graph.report_cycles_in_graph.first
|
342
341
|
expect_cycle_to_include(cycle, :a)
|
343
342
|
end
|
344
343
|
|
345
344
|
it "should report two-vertex loops" do
|
346
345
|
add_edges :a => :b, :b => :a
|
347
|
-
Puppet.
|
346
|
+
expect(Puppet).to receive(:err).with(/Found 1 dependency cycle:\n\(Notify\[a\] => Notify\[b\] => Notify\[a\]\)/)
|
348
347
|
cycle = @graph.report_cycles_in_graph.first
|
349
348
|
expect_cycle_to_include(cycle, :a, :b)
|
350
349
|
end
|
351
350
|
|
352
351
|
it "should report multi-vertex loops" do
|
353
352
|
add_edges :a => :b, :b => :c, :c => :a
|
354
|
-
Puppet.
|
353
|
+
expect(Puppet).to receive(:err).with(/Found 1 dependency cycle:\n\(Notify\[a\] => Notify\[b\] => Notify\[c\] => Notify\[a\]\)/)
|
355
354
|
cycle = @graph.report_cycles_in_graph.first
|
356
355
|
expect_cycle_to_include(cycle, :a, :b, :c)
|
357
356
|
end
|
358
357
|
|
359
358
|
it "should report when a larger tree contains a small cycle" do
|
360
359
|
add_edges :a => :b, :b => :a, :c => :a, :d => :c
|
361
|
-
Puppet.
|
360
|
+
expect(Puppet).to receive(:err).with(/Found 1 dependency cycle:\n\(Notify\[a\] => Notify\[b\] => Notify\[a\]\)/)
|
362
361
|
cycle = @graph.report_cycles_in_graph.first
|
363
362
|
expect_cycle_to_include(cycle, :a, :b)
|
364
363
|
end
|
365
364
|
|
366
365
|
it "should succeed on trees with no cycles" do
|
367
366
|
add_edges :a => :b, :b => :e, :c => :a, :d => :c
|
368
|
-
Puppet.
|
367
|
+
expect(Puppet).not_to receive(:err)
|
369
368
|
expect(@graph.report_cycles_in_graph).to be_nil
|
370
369
|
end
|
371
370
|
|
@@ -469,14 +468,14 @@ describe Puppet::Graph::SimpleGraph do
|
|
469
468
|
end
|
470
469
|
|
471
470
|
it "should only write when graphing is enabled" do
|
472
|
-
File.
|
471
|
+
expect(File).not_to receive(:open).with(@file)
|
473
472
|
Puppet[:graph] = false
|
474
473
|
@graph.write_graph(@name)
|
475
474
|
end
|
476
475
|
|
477
476
|
it "should write a dot file based on the passed name" do
|
478
|
-
File.
|
479
|
-
@graph.
|
477
|
+
expect(File).to receive(:open).with(@file, "w:UTF-8").and_yield(double("file", :puts => nil))
|
478
|
+
expect(@graph).to receive(:to_dot).with("name" => @name.to_s.capitalize)
|
480
479
|
Puppet[:graph] = true
|
481
480
|
@graph.write_graph(@name)
|
482
481
|
end
|
@@ -504,7 +503,7 @@ describe Puppet::Graph::SimpleGraph do
|
|
504
503
|
# because indexing a String with a non-Integer throws an exception (and none of
|
505
504
|
# these tests need anything meaningful from []).
|
506
505
|
resource = "a"
|
507
|
-
resource.
|
506
|
+
allow(resource).to receive(:[])
|
508
507
|
@event = Puppet::Transaction::Event.new(:name => :yay, :resource => resource)
|
509
508
|
@none = Puppet::Transaction::Event.new(:name => :NONE, :resource => resource)
|
510
509
|
|
@@ -16,8 +16,8 @@ describe 'HieraPuppet' do
|
|
16
16
|
|
17
17
|
context "when the hiera_config_file exists" do
|
18
18
|
before do
|
19
|
-
Hiera::Config.
|
20
|
-
HieraPuppet.
|
19
|
+
expect(Hiera::Config).to receive(:load).and_return(hiera_config_data)
|
20
|
+
expect(HieraPuppet).to receive(:hiera_config_file).and_return(true)
|
21
21
|
end
|
22
22
|
|
23
23
|
it "should return a configuration hash" do
|
@@ -31,8 +31,8 @@ describe 'HieraPuppet' do
|
|
31
31
|
|
32
32
|
context "when the hiera_config_file does not exist" do
|
33
33
|
before do
|
34
|
-
Hiera::Config.
|
35
|
-
HieraPuppet.
|
34
|
+
expect(Hiera::Config).not_to receive(:load)
|
35
|
+
expect(HieraPuppet).to receive(:hiera_config_file).and_return(nil)
|
36
36
|
end
|
37
37
|
|
38
38
|
it "should return a configuration hash" do
|
@@ -59,7 +59,7 @@ describe 'HieraPuppet' do
|
|
59
59
|
pending("This example does not apply to Puppet #{Puppet.version} because it does not have this setting")
|
60
60
|
end
|
61
61
|
|
62
|
-
Puppet::FileSystem.
|
62
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(Puppet[:hiera_config]).and_return(true)
|
63
63
|
expect(HieraPuppet.send(:hiera_config_file)).to eq(Puppet[:hiera_config])
|
64
64
|
end
|
65
65
|
|
@@ -75,29 +75,29 @@ describe 'HieraPuppet' do
|
|
75
75
|
end
|
76
76
|
|
77
77
|
it "should use Puppet.settings[:codedir]/hiera.yaml when '$codedir/hiera.yaml' exists and '$confdir/hiera.yaml' does not exist" do
|
78
|
-
Puppet::FileSystem.
|
79
|
-
Puppet::FileSystem.
|
78
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(code_hiera_config).and_return(true)
|
79
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(conf_hiera_config).and_return(false)
|
80
80
|
|
81
81
|
expect(HieraPuppet.send(:hiera_config_file)).to eq(code_hiera_config)
|
82
82
|
end
|
83
83
|
|
84
84
|
it "should use Puppet.settings[:confdir]/hiera.yaml when '$codedir/hiera.yaml' does not exist and '$confdir/hiera.yaml' exists" do
|
85
|
-
Puppet::FileSystem.
|
86
|
-
Puppet::FileSystem.
|
85
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(code_hiera_config).and_return(false)
|
86
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(conf_hiera_config).and_return(true)
|
87
87
|
|
88
88
|
expect(HieraPuppet.send(:hiera_config_file)).to eq(conf_hiera_config)
|
89
89
|
end
|
90
90
|
|
91
91
|
it "should use Puppet.settings[:codedir]/hiera.yaml when '$codedir/hiera.yaml' exists and '$confdir/hiera.yaml' exists" do
|
92
|
-
Puppet::FileSystem.
|
93
|
-
Puppet::FileSystem.
|
92
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(code_hiera_config).and_return(true)
|
93
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(conf_hiera_config).and_return(true)
|
94
94
|
|
95
95
|
expect(HieraPuppet.send(:hiera_config_file)).to eq(code_hiera_config)
|
96
96
|
end
|
97
97
|
|
98
98
|
it "should return nil when neither '$codedir/hiera.yaml' nor '$confdir/hiera.yaml' exists" do
|
99
|
-
Puppet::FileSystem.
|
100
|
-
Puppet::FileSystem.
|
99
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(code_hiera_config).and_return(false)
|
100
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(conf_hiera_config).and_return(false)
|
101
101
|
|
102
102
|
expect(HieraPuppet.send(:hiera_config_file)).to eq(nil)
|
103
103
|
end
|
@@ -109,9 +109,9 @@ describe 'HieraPuppet' do
|
|
109
109
|
explicit_hiera_config = '/an/explicit/hiera.yaml'
|
110
110
|
end
|
111
111
|
Puppet.settings[:hiera_config] = explicit_hiera_config
|
112
|
-
Puppet::FileSystem.
|
113
|
-
Puppet::FileSystem.
|
114
|
-
Puppet::FileSystem.
|
112
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(explicit_hiera_config).and_return(true)
|
113
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(code_hiera_config).and_return(true)
|
114
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(conf_hiera_config).and_return(true)
|
115
115
|
|
116
116
|
expect(HieraPuppet.send(:hiera_config_file)).to eq(explicit_hiera_config)
|
117
117
|
end
|
@@ -126,18 +126,18 @@ describe 'HieraPuppet' do
|
|
126
126
|
end
|
127
127
|
|
128
128
|
it "should return the value from Hiera" do
|
129
|
-
Hiera.
|
129
|
+
allow_any_instance_of(Hiera).to receive(:lookup).and_return('8080')
|
130
130
|
expect(HieraPuppet.lookup('port', nil, scope, nil, :priority)).to eq('8080')
|
131
131
|
|
132
|
-
Hiera.
|
132
|
+
allow_any_instance_of(Hiera).to receive(:lookup).and_return(['foo', 'bar'])
|
133
133
|
expect(HieraPuppet.lookup('ntpservers', nil, scope, nil, :array)).to eq(['foo', 'bar'])
|
134
134
|
|
135
|
-
Hiera.
|
135
|
+
allow_any_instance_of(Hiera).to receive(:lookup).and_return({'uid' => '1000'})
|
136
136
|
expect(HieraPuppet.lookup('user', nil, scope, nil, :hash)).to eq({'uid' => '1000'})
|
137
137
|
end
|
138
138
|
|
139
139
|
it "should raise a useful error when the answer is nil" do
|
140
|
-
Hiera.
|
140
|
+
allow_any_instance_of(Hiera).to receive(:lookup).and_return(nil)
|
141
141
|
expect do
|
142
142
|
HieraPuppet.lookup('port', nil, scope, nil, :priority)
|
143
143
|
end.to raise_error(Puppet::ParseError,
|
@@ -1,4 +1,3 @@
|
|
1
|
-
#! /usr/bin/env ruby
|
2
1
|
require 'spec_helper'
|
3
2
|
require 'puppet_spec/compiler'
|
4
3
|
require 'matchers/resource'
|
@@ -11,14 +10,14 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
11
10
|
let(:node) { Puppet::Node.new(node_name)}
|
12
11
|
|
13
12
|
before do
|
14
|
-
Facter.
|
13
|
+
allow(Facter).to receive(:to_hash).and_return({})
|
15
14
|
end
|
16
15
|
|
17
16
|
describe "when initializing" do
|
18
17
|
before do
|
19
|
-
Puppet.
|
20
|
-
Facter.
|
21
|
-
Facter.
|
18
|
+
expect(Puppet).to receive(:version).and_return(1)
|
19
|
+
expect(Facter).to receive(:value).with('fqdn').and_return("my.server.com")
|
20
|
+
expect(Facter).to receive(:value).with('ipaddress').and_return("my.ip.address")
|
22
21
|
end
|
23
22
|
|
24
23
|
it "should gather data about itself" do
|
@@ -30,7 +29,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
30
29
|
Puppet::Node.indirection.save(Puppet::Node.new("node1"))
|
31
30
|
Puppet::Node.indirection.save(Puppet::Node.new("node2"))
|
32
31
|
|
33
|
-
compiler.
|
32
|
+
allow(compiler).to receive(:compile)
|
34
33
|
|
35
34
|
compiler.find(Puppet::Indirector::Request.new(:catalog, :find, 'node1', nil, :node => 'node1'))
|
36
35
|
compiler.find(Puppet::Indirector::Request.new(:catalog, :find, 'node2', nil, :node => 'node2'))
|
@@ -39,71 +38,71 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
39
38
|
|
40
39
|
describe "when finding catalogs" do
|
41
40
|
before do
|
42
|
-
Facter.
|
41
|
+
allow(Facter).to receive(:value).and_return("whatever")
|
43
42
|
|
44
|
-
node.
|
45
|
-
Puppet::Node.indirection.
|
43
|
+
allow(node).to receive(:merge)
|
44
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
46
45
|
@request = Puppet::Indirector::Request.new(:catalog, :find, node_name, nil, :node => node_name)
|
47
46
|
end
|
48
47
|
|
49
48
|
it "should directly use provided nodes for a local request" do
|
50
|
-
Puppet::Node.indirection.
|
51
|
-
compiler.
|
52
|
-
@request.
|
53
|
-
@request.
|
49
|
+
expect(Puppet::Node.indirection).not_to receive(:find)
|
50
|
+
expect(compiler).to receive(:compile).with(node, anything)
|
51
|
+
allow(@request).to receive(:options).and_return(:use_node => node)
|
52
|
+
allow(@request).to receive(:remote?).and_return(false)
|
54
53
|
compiler.find(@request)
|
55
54
|
end
|
56
55
|
|
57
56
|
it "rejects a provided node if the request is remote" do
|
58
|
-
@request.
|
59
|
-
@request.
|
57
|
+
allow(@request).to receive(:options).and_return(:use_node => node)
|
58
|
+
allow(@request).to receive(:remote?).and_return(true)
|
60
59
|
expect {
|
61
60
|
compiler.find(@request)
|
62
61
|
}.to raise_error Puppet::Error, /invalid option use_node/i
|
63
62
|
end
|
64
63
|
|
65
64
|
it "should use the authenticated node name if no request key is provided" do
|
66
|
-
@request.
|
67
|
-
Puppet::Node.indirection.
|
68
|
-
compiler.
|
65
|
+
allow(@request).to receive(:key).and_return(nil)
|
66
|
+
expect(Puppet::Node.indirection).to receive(:find).with(node_name, anything).and_return(node)
|
67
|
+
expect(compiler).to receive(:compile).with(node, anything)
|
69
68
|
compiler.find(@request)
|
70
69
|
end
|
71
70
|
|
72
71
|
it "should use the provided node name by default" do
|
73
|
-
@request.
|
72
|
+
expect(@request).to receive(:key).and_return("my_node")
|
74
73
|
|
75
|
-
Puppet::Node.indirection.
|
76
|
-
compiler.
|
74
|
+
expect(Puppet::Node.indirection).to receive(:find).with("my_node", anything).and_return(node)
|
75
|
+
expect(compiler).to receive(:compile).with(node, anything)
|
77
76
|
compiler.find(@request)
|
78
77
|
end
|
79
78
|
|
80
79
|
it "should fail if no node is passed and none can be found" do
|
81
|
-
Puppet::Node.indirection.
|
80
|
+
allow(Puppet::Node.indirection).to receive(:find).with(node_name, anything).and_return(nil)
|
82
81
|
expect { compiler.find(@request) }.to raise_error(ArgumentError)
|
83
82
|
end
|
84
83
|
|
85
84
|
it "should fail intelligently when searching for a node raises an exception" do
|
86
|
-
Puppet::Node.indirection.
|
85
|
+
allow(Puppet::Node.indirection).to receive(:find).with(node_name, anything).and_raise("eh")
|
87
86
|
expect { compiler.find(@request) }.to raise_error(Puppet::Error)
|
88
87
|
end
|
89
88
|
|
90
89
|
it "should pass the found node to the compiler for compiling" do
|
91
|
-
Puppet::Node.indirection.
|
92
|
-
Puppet::Parser::Compiler.
|
90
|
+
expect(Puppet::Node.indirection).to receive(:find).with(node_name, anything).and_return(node)
|
91
|
+
expect(Puppet::Parser::Compiler).to receive(:compile).with(node, anything)
|
93
92
|
compiler.find(@request)
|
94
93
|
end
|
95
94
|
|
96
95
|
it "should pass node containing percent character to the compiler" do
|
97
96
|
node_with_percent_character = Puppet::Node.new "%6de"
|
98
|
-
Puppet::Node.indirection.
|
99
|
-
Puppet::Parser::Compiler.
|
97
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node_with_percent_character)
|
98
|
+
expect(Puppet::Parser::Compiler).to receive(:compile).with(node_with_percent_character, anything)
|
100
99
|
compiler.find(@request)
|
101
100
|
end
|
102
101
|
|
103
102
|
it "should extract any facts from the request" do
|
104
|
-
Puppet::Node.indirection.
|
105
|
-
compiler.
|
106
|
-
Puppet::Parser::Compiler.
|
103
|
+
expect(Puppet::Node.indirection).to receive(:find).with(node_name, anything).and_return(node)
|
104
|
+
expect(compiler).to receive(:extract_facts_from_request).with(@request)
|
105
|
+
allow(Puppet::Parser::Compiler).to receive(:compile)
|
107
106
|
compiler.find(@request)
|
108
107
|
end
|
109
108
|
|
@@ -126,119 +125,119 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
126
125
|
end
|
127
126
|
|
128
127
|
it "should return the results of compiling as the catalog" do
|
129
|
-
Puppet::Node.indirection.
|
128
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
130
129
|
catalog = Puppet::Resource::Catalog.new(node.name)
|
131
|
-
Puppet::Parser::Compiler.
|
130
|
+
allow(Puppet::Parser::Compiler).to receive(:compile).and_return(catalog)
|
132
131
|
|
133
132
|
expect(compiler.find(@request)).to equal(catalog)
|
134
133
|
end
|
135
134
|
|
136
135
|
it "passes the code_id from the request to the compiler" do
|
137
|
-
Puppet::Node.indirection.
|
136
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
138
137
|
code_id = 'b59e5df0578ef411f773ee6c33d8073c50e7b8fe'
|
139
138
|
@request.options[:code_id] = code_id
|
140
139
|
|
141
|
-
Puppet::Parser::Compiler.
|
140
|
+
expect(Puppet::Parser::Compiler).to receive(:compile).with(anything, code_id)
|
142
141
|
|
143
142
|
compiler.find(@request)
|
144
143
|
end
|
145
144
|
|
146
145
|
it "returns a catalog with the code_id from the request" do
|
147
|
-
Puppet::Node.indirection.
|
146
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
148
147
|
code_id = 'b59e5df0578ef411f773ee6c33d8073c50e7b8fe'
|
149
148
|
@request.options[:code_id] = code_id
|
150
149
|
|
151
150
|
catalog = Puppet::Resource::Catalog.new(node.name, node.environment, code_id)
|
152
|
-
Puppet::Parser::Compiler.
|
151
|
+
allow(Puppet::Parser::Compiler).to receive(:compile).and_return(catalog)
|
153
152
|
|
154
153
|
expect(compiler.find(@request).code_id).to eq(code_id)
|
155
154
|
end
|
156
155
|
|
157
156
|
it "does not inline metadata when the static_catalog option is false" do
|
158
|
-
Puppet::Node.indirection.
|
157
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
159
158
|
@request.options[:static_catalog] = false
|
160
159
|
@request.options[:code_id] = 'some_code_id'
|
161
|
-
node.environment.
|
160
|
+
allow(node.environment).to receive(:static_catalogs?).and_return(true)
|
162
161
|
|
163
162
|
catalog = Puppet::Resource::Catalog.new(node.name, node.environment)
|
164
|
-
Puppet::Parser::Compiler.
|
163
|
+
allow(Puppet::Parser::Compiler).to receive(:compile).and_return(catalog)
|
165
164
|
|
166
|
-
compiler.
|
165
|
+
expect(compiler).not_to receive(:inline_metadata)
|
167
166
|
compiler.find(@request)
|
168
167
|
end
|
169
168
|
|
170
169
|
it "does not inline metadata when static_catalogs are disabled" do
|
171
|
-
Puppet::Node.indirection.
|
170
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
172
171
|
@request.options[:static_catalog] = true
|
173
172
|
@request.options[:checksum_type] = 'md5'
|
174
173
|
@request.options[:code_id] = 'some_code_id'
|
175
|
-
node.environment.
|
174
|
+
allow(node.environment).to receive(:static_catalogs?).and_return(false)
|
176
175
|
|
177
176
|
catalog = Puppet::Resource::Catalog.new(node.name, node.environment)
|
178
|
-
Puppet::Parser::Compiler.
|
177
|
+
allow(Puppet::Parser::Compiler).to receive(:compile).and_return(catalog)
|
179
178
|
|
180
|
-
compiler.
|
179
|
+
expect(compiler).not_to receive(:inline_metadata)
|
181
180
|
compiler.find(@request)
|
182
181
|
end
|
183
182
|
|
184
183
|
it "does not inline metadata when code_id is not specified" do
|
185
|
-
Puppet::Node.indirection.
|
184
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
186
185
|
@request.options[:static_catalog] = true
|
187
186
|
@request.options[:checksum_type] = 'md5'
|
188
|
-
node.environment.
|
187
|
+
allow(node.environment).to receive(:static_catalogs?).and_return(true)
|
189
188
|
|
190
189
|
catalog = Puppet::Resource::Catalog.new(node.name, node.environment)
|
191
|
-
Puppet::Parser::Compiler.
|
190
|
+
allow(Puppet::Parser::Compiler).to receive(:compile).and_return(catalog)
|
192
191
|
|
193
|
-
compiler.
|
192
|
+
expect(compiler).not_to receive(:inline_metadata)
|
194
193
|
expect(compiler.find(@request)).to eq(catalog)
|
195
194
|
end
|
196
195
|
|
197
196
|
it "inlines metadata when the static_catalog option is true, static_catalogs are enabled, and a code_id is provided" do
|
198
|
-
Puppet::Node.indirection.
|
197
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
199
198
|
@request.options[:static_catalog] = true
|
200
199
|
@request.options[:checksum_type] = 'sha256'
|
201
200
|
@request.options[:code_id] = 'some_code_id'
|
202
|
-
node.environment.
|
201
|
+
allow(node.environment).to receive(:static_catalogs?).and_return(true)
|
203
202
|
|
204
203
|
catalog = Puppet::Resource::Catalog.new(node.name, node.environment)
|
205
|
-
Puppet::Parser::Compiler.
|
204
|
+
allow(Puppet::Parser::Compiler).to receive(:compile).and_return(catalog)
|
206
205
|
|
207
|
-
compiler.
|
206
|
+
expect(compiler).to receive(:inline_metadata).with(catalog, :sha256).and_return(catalog)
|
208
207
|
compiler.find(@request)
|
209
208
|
end
|
210
209
|
|
211
210
|
it "inlines metadata with the first common checksum type" do
|
212
|
-
Puppet::Node.indirection.
|
211
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
213
212
|
@request.options[:static_catalog] = true
|
214
213
|
@request.options[:checksum_type] = 'atime.md5.sha256.mtime'
|
215
214
|
@request.options[:code_id] = 'some_code_id'
|
216
|
-
node.environment.
|
215
|
+
allow(node.environment).to receive(:static_catalogs?).and_return(true)
|
217
216
|
|
218
217
|
catalog = Puppet::Resource::Catalog.new(node.name, node.environment)
|
219
|
-
Puppet::Parser::Compiler.
|
218
|
+
allow(Puppet::Parser::Compiler).to receive(:compile).and_return(catalog)
|
220
219
|
|
221
|
-
compiler.
|
220
|
+
expect(compiler).to receive(:inline_metadata).with(catalog, :md5).and_return(catalog)
|
222
221
|
compiler.find(@request)
|
223
222
|
end
|
224
223
|
|
225
224
|
it "errors if checksum_type contains no shared checksum types" do
|
226
|
-
Puppet::Node.indirection.
|
225
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
227
226
|
@request.options[:static_catalog] = true
|
228
227
|
@request.options[:checksum_type] = 'atime.md2'
|
229
228
|
@request.options[:code_id] = 'some_code_id'
|
230
|
-
node.environment.
|
229
|
+
allow(node.environment).to receive(:static_catalogs?).and_return(true)
|
231
230
|
|
232
231
|
expect { compiler.find(@request) }.to raise_error Puppet::Error,
|
233
232
|
"Unable to find a common checksum type between agent 'atime.md2' and master '[:sha256, :sha256lite, :md5, :md5lite, :sha1, :sha1lite, :sha512, :sha384, :sha224, :mtime, :ctime, :none]'."
|
234
233
|
end
|
235
234
|
|
236
235
|
it "errors if checksum_type contains no shared checksum types" do
|
237
|
-
Puppet::Node.indirection.
|
236
|
+
allow(Puppet::Node.indirection).to receive(:find).and_return(node)
|
238
237
|
@request.options[:static_catalog] = true
|
239
238
|
@request.options[:checksum_type] = nil
|
240
239
|
@request.options[:code_id] = 'some_code_id'
|
241
|
-
node.environment.
|
240
|
+
allow(node.environment).to receive(:static_catalogs?).and_return(true)
|
242
241
|
|
243
242
|
expect { compiler.find(@request) }.to raise_error Puppet::Error,
|
244
243
|
"Unable to find a common checksum type between agent '' and master '[:sha256, :sha256lite, :md5, :md5lite, :sha1, :sha1lite, :sha512, :sha384, :sha224, :mtime, :ctime, :none]'."
|
@@ -248,7 +247,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
248
247
|
describe "when handling a request with facts" do
|
249
248
|
before do
|
250
249
|
Puppet::Node::Facts.indirection.terminus_class = :memory
|
251
|
-
Facter.
|
250
|
+
allow(Facter).to receive(:value).and_return("something")
|
252
251
|
|
253
252
|
@facts = Puppet::Node::Facts.new('hostname', "fact" => "value", "architecture" => "i386")
|
254
253
|
end
|
@@ -317,7 +316,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
317
316
|
:transaction_uuid => request.options[:transaction_uuid],
|
318
317
|
}
|
319
318
|
|
320
|
-
Puppet::Node::Facts.indirection.
|
319
|
+
expect(Puppet::Node::Facts.indirection).to receive(:save).with(@facts, nil, options)
|
321
320
|
compiler.find(request)
|
322
321
|
end
|
323
322
|
|
@@ -329,7 +328,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
329
328
|
:transaction_uuid => request.options[:transaction_uuid],
|
330
329
|
}
|
331
330
|
|
332
|
-
Puppet::Node::Facts.indirection.
|
331
|
+
expect(Puppet::Node::Facts.indirection).not_to receive(:save).with(@facts, nil, options)
|
333
332
|
compiler.find(request)
|
334
333
|
end
|
335
334
|
end
|
@@ -337,53 +336,53 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
337
336
|
|
338
337
|
describe "when finding nodes" do
|
339
338
|
it "should look node information up via the Node class with the provided key" do
|
340
|
-
Facter.
|
339
|
+
allow(Facter).to receive(:value).and_return("whatever")
|
341
340
|
request = Puppet::Indirector::Request.new(:catalog, :find, node_name, nil)
|
342
|
-
compiler.
|
341
|
+
allow(compiler).to receive(:compile)
|
343
342
|
|
344
|
-
Puppet::Node.indirection.
|
343
|
+
expect(Puppet::Node.indirection).to receive(:find).with(node_name, anything).and_return(node)
|
345
344
|
|
346
345
|
compiler.find(request)
|
347
346
|
end
|
348
347
|
|
349
348
|
it "should pass the transaction_uuid to the node indirection" do
|
350
349
|
uuid = '793ff10d-89f8-4527-a645-3302cbc749f3'
|
351
|
-
compiler.
|
350
|
+
allow(compiler).to receive(:compile)
|
352
351
|
request = Puppet::Indirector::Request.new(:catalog, :find, node_name,
|
353
352
|
nil, :transaction_uuid => uuid)
|
354
353
|
|
355
|
-
Puppet::Node.indirection.
|
354
|
+
expect(Puppet::Node.indirection).to receive(:find).with(
|
356
355
|
node_name,
|
357
|
-
|
358
|
-
).
|
356
|
+
hash_including(:transaction_uuid => uuid)
|
357
|
+
).and_return(node)
|
359
358
|
|
360
359
|
compiler.find(request)
|
361
360
|
end
|
362
361
|
|
363
362
|
it "should pass the configured_environment to the node indirection" do
|
364
363
|
environment = 'foo'
|
365
|
-
compiler.
|
364
|
+
allow(compiler).to receive(:compile)
|
366
365
|
request = Puppet::Indirector::Request.new(:catalog, :find, node_name,
|
367
366
|
nil, :configured_environment => environment)
|
368
367
|
|
369
|
-
Puppet::Node.indirection.
|
368
|
+
expect(Puppet::Node.indirection).to receive(:find).with(
|
370
369
|
node_name,
|
371
|
-
|
372
|
-
).
|
370
|
+
hash_including(:configured_environment => environment)
|
371
|
+
).and_return(node)
|
373
372
|
|
374
373
|
compiler.find(request)
|
375
374
|
end
|
376
375
|
|
377
376
|
it "should pass a facts object from the original request facts to the node indirection" do
|
378
377
|
facts = Puppet::Node::Facts.new("hostname", :afact => "avalue")
|
379
|
-
compiler.
|
380
|
-
compiler.
|
378
|
+
expect(compiler).to receive(:extract_facts_from_request).and_return(facts)
|
379
|
+
expect(compiler).to receive(:save_facts_from_request)
|
381
380
|
|
382
381
|
request = Puppet::Indirector::Request.new(:catalog, :find, "hostname",
|
383
382
|
nil, :facts_format => "application/json",
|
384
383
|
:facts => facts.render('json'))
|
385
384
|
|
386
|
-
Puppet::Node.indirection.
|
385
|
+
expect(Puppet::Node.indirection).to receive(:find).with("hostname", hash_including(:facts => facts)).and_return(node)
|
387
386
|
|
388
387
|
compiler.find(request)
|
389
388
|
end
|
@@ -391,62 +390,61 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
391
390
|
|
392
391
|
describe "after finding nodes" do
|
393
392
|
before do
|
394
|
-
Puppet.
|
395
|
-
Facter.
|
396
|
-
Facter.
|
393
|
+
expect(Puppet).to receive(:version).and_return(1)
|
394
|
+
expect(Facter).to receive(:value).with('fqdn').and_return("my.server.com")
|
395
|
+
expect(Facter).to receive(:value).with('ipaddress').and_return("my.ip.address")
|
397
396
|
@request = Puppet::Indirector::Request.new(:catalog, :find, node_name, nil)
|
398
|
-
compiler.
|
399
|
-
Puppet::Node.indirection.
|
397
|
+
allow(compiler).to receive(:compile)
|
398
|
+
allow(Puppet::Node.indirection).to receive(:find).with(node_name, anything).and_return(node)
|
400
399
|
end
|
401
400
|
|
402
401
|
it "should add the server's Puppet version to the node's parameters as 'serverversion'" do
|
403
|
-
node.
|
402
|
+
expect(node).to receive(:merge).with(hash_including("serverversion" => "1"))
|
404
403
|
compiler.find(@request)
|
405
404
|
end
|
406
405
|
|
407
406
|
it "should add the server's fqdn to the node's parameters as 'servername'" do
|
408
|
-
node.
|
407
|
+
expect(node).to receive(:merge).with(hash_including("servername" => "my.server.com"))
|
409
408
|
compiler.find(@request)
|
410
409
|
end
|
411
410
|
|
412
411
|
it "should add the server's IP address to the node's parameters as 'serverip'" do
|
413
|
-
node.
|
412
|
+
expect(node).to receive(:merge).with(hash_including("serverip" => "my.ip.address"))
|
414
413
|
compiler.find(@request)
|
415
414
|
end
|
416
415
|
end
|
417
416
|
|
418
417
|
describe "when filtering resources" do
|
419
418
|
before :each do
|
420
|
-
Facter.
|
421
|
-
@catalog =
|
422
|
-
@catalog.
|
419
|
+
allow(Facter).to receive(:value)
|
420
|
+
@catalog = double('catalog')
|
421
|
+
allow(@catalog).to receive(:respond_to?).with(:filter).and_return(true)
|
423
422
|
end
|
424
423
|
|
425
424
|
it "should delegate to the catalog instance filtering" do
|
426
|
-
@catalog.
|
425
|
+
expect(@catalog).to receive(:filter)
|
427
426
|
compiler.filter(@catalog)
|
428
427
|
end
|
429
428
|
|
430
429
|
it "should filter out virtual resources" do
|
431
|
-
resource =
|
432
|
-
@catalog.
|
430
|
+
resource = double('resource', :virtual? => true)
|
431
|
+
allow(@catalog).to receive(:filter).and_yield(resource)
|
433
432
|
|
434
433
|
compiler.filter(@catalog)
|
435
434
|
end
|
436
435
|
|
437
436
|
it "should return the same catalog if it doesn't support filtering" do
|
438
|
-
@catalog.
|
437
|
+
allow(@catalog).to receive(:respond_to?).with(:filter).and_return(false)
|
439
438
|
|
440
439
|
expect(compiler.filter(@catalog)).to eq(@catalog)
|
441
440
|
end
|
442
441
|
|
443
442
|
it "should return the filtered catalog" do
|
444
|
-
catalog =
|
445
|
-
@catalog.
|
443
|
+
catalog = double('filtered catalog')
|
444
|
+
allow(@catalog).to receive(:filter).and_return(catalog)
|
446
445
|
|
447
446
|
expect(compiler.filter(@catalog)).to eq(catalog)
|
448
447
|
end
|
449
|
-
|
450
448
|
end
|
451
449
|
|
452
450
|
describe "when inlining metadata" do
|
@@ -461,33 +459,33 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
461
459
|
def stubs_resource_metadata(ftype, relative_path, full_path = nil)
|
462
460
|
full_path ||= File.join(Puppet[:environmentpath], 'production', relative_path)
|
463
461
|
|
464
|
-
metadata =
|
465
|
-
metadata.
|
466
|
-
metadata.
|
467
|
-
metadata.
|
468
|
-
metadata.
|
469
|
-
metadata.
|
470
|
-
metadata.
|
462
|
+
metadata = double('metadata')
|
463
|
+
allow(metadata).to receive(:ftype).and_return(ftype)
|
464
|
+
allow(metadata).to receive(:full_path).and_return(full_path)
|
465
|
+
allow(metadata).to receive(:relative_path).and_return(relative_path)
|
466
|
+
allow(metadata).to receive(:source).and_return("puppet:///#{relative_path}")
|
467
|
+
allow(metadata).to receive(:source=)
|
468
|
+
allow(metadata).to receive(:content_uri=)
|
471
469
|
|
472
470
|
metadata
|
473
471
|
end
|
474
472
|
|
475
473
|
def stubs_file_metadata(checksum_type, sha, relative_path, full_path = nil)
|
476
474
|
metadata = stubs_resource_metadata('file', relative_path, full_path)
|
477
|
-
metadata.
|
478
|
-
metadata.
|
475
|
+
allow(metadata).to receive(:checksum).and_return("{#{checksum_type}}#{sha}")
|
476
|
+
allow(metadata).to receive(:checksum_type).and_return(checksum_type)
|
479
477
|
metadata
|
480
478
|
end
|
481
479
|
|
482
480
|
def stubs_link_metadata(relative_path, destination)
|
483
481
|
metadata = stubs_resource_metadata('link', relative_path)
|
484
|
-
metadata.
|
482
|
+
allow(metadata).to receive(:destination).and_return(destination)
|
485
483
|
metadata
|
486
484
|
end
|
487
485
|
|
488
486
|
def stubs_directory_metadata(relative_path)
|
489
487
|
metadata = stubs_resource_metadata('directory', relative_path)
|
490
|
-
metadata.
|
488
|
+
allow(metadata).to receive(:relative_path).and_return('.')
|
491
489
|
metadata
|
492
490
|
end
|
493
491
|
|
@@ -500,8 +498,8 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
500
498
|
MANIFEST
|
501
499
|
|
502
500
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules/mymodule/files/config_file.txt')
|
503
|
-
metadata.
|
504
|
-
metadata.
|
501
|
+
expect(metadata).to receive(:source=).with(source)
|
502
|
+
expect(metadata).to receive(:content_uri=).with('puppet:///modules/mymodule/files/config_file.txt')
|
505
503
|
|
506
504
|
options = {
|
507
505
|
:environment => catalog.environment_instance,
|
@@ -509,7 +507,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
509
507
|
:checksum_type => checksum_type.to_sym,
|
510
508
|
:source_permissions => :ignore
|
511
509
|
}
|
512
|
-
Puppet::FileServing::Metadata.indirection.
|
510
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, options).and_return(metadata)
|
513
511
|
|
514
512
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
515
513
|
|
@@ -528,8 +526,8 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
528
526
|
MANIFEST
|
529
527
|
|
530
528
|
metadata = stubs_link_metadata('modules/mymodule/files/config_file.txt', '/tmp/some/absolute/path')
|
531
|
-
metadata.
|
532
|
-
metadata.
|
529
|
+
expect(metadata).to receive(:source=).with(source)
|
530
|
+
expect(metadata).to receive(:content_uri=).with('puppet:///modules/mymodule/files/config_file.txt')
|
533
531
|
|
534
532
|
options = {
|
535
533
|
:environment => catalog.environment_instance,
|
@@ -537,7 +535,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
537
535
|
:checksum_type => checksum_type.to_sym,
|
538
536
|
:source_permissions => :use
|
539
537
|
}
|
540
|
-
Puppet::FileServing::Metadata.indirection.
|
538
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, options).and_return(metadata)
|
541
539
|
|
542
540
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
543
541
|
|
@@ -568,7 +566,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
568
566
|
:source_permissions => default_file[:source_permissions]
|
569
567
|
}
|
570
568
|
|
571
|
-
Puppet::FileServing::Metadata.indirection.
|
569
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, options).and_return(metadata)
|
572
570
|
|
573
571
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
574
572
|
end
|
@@ -583,10 +581,10 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
583
581
|
MANIFEST
|
584
582
|
|
585
583
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules/mymodule/files/config_file.txt')
|
586
|
-
metadata.
|
587
|
-
metadata.
|
588
|
-
Puppet::FileServing::Metadata.indirection.
|
589
|
-
Puppet::FileServing::Metadata.indirection.
|
584
|
+
expect(metadata).to receive(:source=).with(source)
|
585
|
+
expect(metadata).to receive(:content_uri=).with('puppet:///modules/mymodule/files/config_file.txt')
|
586
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
587
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(alt_source, anything).and_return(nil)
|
590
588
|
|
591
589
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
592
590
|
|
@@ -613,7 +611,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
613
611
|
:checksum_type => checksum_type.to_sym,
|
614
612
|
:source_permissions => :ignore
|
615
613
|
}
|
616
|
-
Puppet::FileServing::Metadata.indirection.
|
614
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, options).and_return(metadata)
|
617
615
|
|
618
616
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
619
617
|
|
@@ -634,11 +632,11 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
634
632
|
MANIFEST
|
635
633
|
|
636
634
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules/mymodule/files/config_file.txt')
|
637
|
-
metadata.
|
635
|
+
allow(metadata).to receive(:source).and_return(source)
|
638
636
|
|
639
|
-
metadata.
|
637
|
+
expect(metadata).to receive(:content_uri=).with('puppet://myhost:8888/modules/mymodule/files/config_file.txt')
|
640
638
|
|
641
|
-
Puppet::FileServing::Metadata.indirection.
|
639
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
642
640
|
|
643
641
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
644
642
|
end
|
@@ -705,7 +703,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
705
703
|
|
706
704
|
full_path = File.join(Puppet[:codedir], "modules/mymodule/files/config_file.txt")
|
707
705
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules/mymodule/files/config_file.txt', full_path)
|
708
|
-
Puppet::FileServing::Metadata.indirection.
|
706
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
709
707
|
|
710
708
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
711
709
|
expect(catalog.metadata).to be_empty
|
@@ -723,7 +721,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
723
721
|
MANIFEST
|
724
722
|
|
725
723
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'secure/files/data.txt')
|
726
|
-
Puppet::FileServing::Metadata.indirection.
|
724
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
727
725
|
|
728
726
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
729
727
|
expect(catalog.metadata).to be_empty
|
@@ -739,7 +737,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
739
737
|
MANIFEST
|
740
738
|
|
741
739
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules/mymodule/not_in_files/config_file.txt')
|
742
|
-
Puppet::FileServing::Metadata.indirection.
|
740
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
743
741
|
|
744
742
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
745
743
|
expect(catalog.metadata).to be_empty
|
@@ -756,7 +754,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
756
754
|
|
757
755
|
# note empty module name "modules//files"
|
758
756
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules//files/config_file.txt')
|
759
|
-
Puppet::FileServing::Metadata.indirection.
|
757
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
760
758
|
|
761
759
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
762
760
|
expect(catalog.metadata).to be_empty
|
@@ -776,9 +774,9 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
776
774
|
|
777
775
|
# See https://github.com/puppetlabs/control-repo/blob/508b9cc/site/profile/files/puppetmaster/update-classes.sh
|
778
776
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'site/profile/files/puppetmaster/update-classes.sh')
|
779
|
-
metadata.
|
777
|
+
allow(metadata).to receive(:source).and_return(source)
|
780
778
|
|
781
|
-
Puppet::FileServing::Metadata.indirection.
|
779
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
782
780
|
|
783
781
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
784
782
|
expect(catalog.metadata[path]).to eq(metadata)
|
@@ -798,9 +796,9 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
798
796
|
MANIFEST
|
799
797
|
|
800
798
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules/mymodule/files/myfile')
|
801
|
-
metadata.
|
799
|
+
allow(metadata).to receive(:source).and_return(source)
|
802
800
|
|
803
|
-
Puppet::FileServing::Metadata.indirection.
|
801
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
804
802
|
|
805
803
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
806
804
|
expect(catalog.metadata[path]).to eq(metadata)
|
@@ -820,8 +818,8 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
820
818
|
}
|
821
819
|
MANIFEST
|
822
820
|
|
823
|
-
metadata.
|
824
|
-
Puppet::FileServing::Metadata.indirection.
|
821
|
+
expect(metadata).to receive(:content_uri=).with('puppet:///modules/mymodule/files/directory')
|
822
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source_dir, anything).and_return(metadata)
|
825
823
|
|
826
824
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
827
825
|
|
@@ -842,8 +840,8 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
842
840
|
}
|
843
841
|
MANIFEST
|
844
842
|
|
845
|
-
metadata.
|
846
|
-
child_metadata.
|
843
|
+
expect(metadata).to receive(:content_uri=).with('puppet:///modules/mymodule/files/directory')
|
844
|
+
expect(child_metadata).to receive(:content_uri=).with('puppet:///modules/mymodule/files/directory/myfile.txt')
|
847
845
|
|
848
846
|
options = {
|
849
847
|
:environment => catalog.environment_instance,
|
@@ -854,7 +852,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
854
852
|
:recurselimit => nil,
|
855
853
|
:ignore => nil,
|
856
854
|
}
|
857
|
-
Puppet::FileServing::Metadata.indirection.
|
855
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source_dir, options).and_return([metadata, child_metadata])
|
858
856
|
|
859
857
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
860
858
|
|
@@ -885,7 +883,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
885
883
|
:recurselimit => 2,
|
886
884
|
:ignore => 'foo.+',
|
887
885
|
}
|
888
|
-
Puppet::FileServing::Metadata.indirection.
|
886
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source_dir, options).and_return([metadata, child_metadata])
|
889
887
|
|
890
888
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
891
889
|
|
@@ -904,8 +902,8 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
904
902
|
}
|
905
903
|
MANIFEST
|
906
904
|
|
907
|
-
Puppet::FileServing::Metadata.indirection.
|
908
|
-
Puppet::FileServing::Metadata.indirection.
|
905
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source_dir, anything).and_return([metadata, child_metadata])
|
906
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(alt_source_dir, anything).and_return([metadata, child_metadata])
|
909
907
|
|
910
908
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
911
909
|
|
@@ -924,8 +922,8 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
924
922
|
}
|
925
923
|
MANIFEST
|
926
924
|
|
927
|
-
Puppet::FileServing::Metadata.indirection.
|
928
|
-
Puppet::FileServing::Metadata.indirection.
|
925
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source_dir, anything).and_return(nil)
|
926
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(alt_source_dir, anything).and_return([metadata, child_metadata])
|
929
927
|
|
930
928
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
931
929
|
|
@@ -946,9 +944,9 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
946
944
|
MANIFEST
|
947
945
|
|
948
946
|
metadata = stubs_directory_metadata('secure/files/data')
|
949
|
-
metadata.
|
947
|
+
allow(metadata).to receive(:source).and_return(source)
|
950
948
|
|
951
|
-
Puppet::FileServing::Metadata.indirection.
|
949
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source, anything).and_return([metadata])
|
952
950
|
|
953
951
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
954
952
|
expect(catalog.metadata).to be_empty
|
@@ -967,7 +965,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
967
965
|
MANIFEST
|
968
966
|
|
969
967
|
metadata = stubs_directory_metadata('modules/mymodule/not_in_files/directory')
|
970
|
-
Puppet::FileServing::Metadata.indirection.
|
968
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source, anything).and_return([metadata])
|
971
969
|
|
972
970
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
973
971
|
expect(catalog.metadata).to be_empty
|
@@ -988,12 +986,12 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
988
986
|
|
989
987
|
# See https://github.com/puppetlabs/control-repo/blob/508b9cc/site/profile/files/puppetmaster/update-classes.sh
|
990
988
|
dir_metadata = stubs_directory_metadata('site/profile/files/puppetmaster')
|
991
|
-
dir_metadata.
|
989
|
+
allow(dir_metadata).to receive(:source).and_return(source)
|
992
990
|
|
993
991
|
child_metadata = stubs_file_metadata(checksum_type, checksum_value, './update-classes.sh')
|
994
|
-
child_metadata.
|
992
|
+
allow(child_metadata).to receive(:source).and_return("#{source}/update-classes.sh")
|
995
993
|
|
996
|
-
Puppet::FileServing::Metadata.indirection.
|
994
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source, anything).and_return([dir_metadata, child_metadata])
|
997
995
|
|
998
996
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
999
997
|
expect(catalog.metadata).to be_empty
|
@@ -1012,12 +1010,12 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
1012
1010
|
MANIFEST
|
1013
1011
|
|
1014
1012
|
dir_metadata = stubs_directory_metadata('modules/mymodule/files/directory')
|
1015
|
-
dir_metadata.
|
1013
|
+
allow(dir_metadata).to receive(:source).and_return(source)
|
1016
1014
|
|
1017
1015
|
child_metadata = stubs_file_metadata(checksum_type, checksum_value, './file')
|
1018
|
-
child_metadata.
|
1016
|
+
allow(child_metadata).to receive(:source).and_return("#{source}/file")
|
1019
1017
|
|
1020
|
-
Puppet::FileServing::Metadata.indirection.
|
1018
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(source, anything).and_return([dir_metadata, child_metadata])
|
1021
1019
|
|
1022
1020
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
1023
1021
|
|
@@ -1046,7 +1044,7 @@ describe Puppet::Resource::Catalog::Compiler do
|
|
1046
1044
|
MANIFEST
|
1047
1045
|
|
1048
1046
|
metadata = stubs_file_metadata(checksum_type, checksum_value, 'modules/mymodule/files/config_file.txt')
|
1049
|
-
Puppet::FileServing::Metadata.indirection.
|
1047
|
+
expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
|
1050
1048
|
|
1051
1049
|
compiler.send(:inline_metadata, catalog, checksum_type)
|
1052
1050
|
expect(catalog.metadata['c:/foo']).to eq(metadata)
|