puppet 5.5.12-x64-mingw32 → 5.5.13-x64-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Gemfile +0 -5
- data/Gemfile.lock +11 -11
- data/lib/puppet/application/filebucket.rb +4 -0
- data/lib/puppet/configurer.rb +9 -3
- data/lib/puppet/indirector/request.rb +26 -15
- data/lib/puppet/indirector/rest.rb +16 -7
- 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/http_proxy.rb +3 -2
- data/lib/puppet/version.rb +1 -1
- data/locales/puppet.pot +108 -36
- data/man/man5/puppet.conf.5 +2 -2
- data/man/man8/puppet-agent.8 +1 -1
- data/man/man8/puppet-apply.8 +1 -1
- data/man/man8/puppet-ca.8 +1 -1
- data/man/man8/puppet-catalog.8 +1 -1
- data/man/man8/puppet-cert.8 +1 -1
- data/man/man8/puppet-certificate.8 +1 -1
- data/man/man8/puppet-certificate_request.8 +1 -1
- data/man/man8/puppet-certificate_revocation_list.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-master.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-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 +28 -26
- 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/ca_spec.rb +2 -3
- 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 +3 -5
- 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 +5 -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/indirector/node/ldap_spec.rb +2 -3
- data/spec/integration/network/authconfig_spec.rb +23 -24
- data/spec/integration/network/formats_spec.rb +0 -1
- data/spec/integration/network/http/api/indirected_routes_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 +4 -2
- 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/cron/crontab_spec.rb +8 -10
- data/spec/integration/provider/mailalias/aliases_spec.rb +0 -1
- data/spec/integration/provider/mount_spec.rb +9 -9
- 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/provider/ssh_authorized_key_spec.rb +6 -8
- data/spec/integration/provider/sshkey_spec.rb +6 -12
- data/spec/integration/provider/yumrepo_spec.rb +8 -12
- data/spec/integration/reference/providers_spec.rb +0 -1
- 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_authority_spec.rb +0 -1
- data/spec/integration/ssl/certificate_request_spec.rb +0 -1
- data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -1
- data/spec/integration/ssl/host_spec.rb +0 -1
- data/spec/integration/ssl/key_spec.rb +0 -1
- data/spec/integration/test/test_helper_spec.rb +1 -2
- 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/nagios_spec.rb +3 -5
- data/spec/integration/type/package_spec.rb +19 -23
- data/spec/integration/type/tidy_spec.rb +1 -2
- data/spec/integration/type/user_spec.rb +0 -1
- 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 +4 -6
- 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 +11 -2
- 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 +78 -79
- data/spec/unit/application/cert_spec.rb +42 -49
- data/spec/unit/application/certificate_spec.rb +2 -3
- 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 +175 -184
- 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/master_spec.rb +95 -95
- data/spec/unit/application/resource_spec.rb +42 -48
- data/spec/unit/application_spec.rb +74 -84
- data/spec/unit/capability_spec.rb +9 -6
- 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 +190 -193
- 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 +34 -35
- 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 +17 -12
- 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/ca_spec.rb +0 -1
- data/spec/unit/face/catalog_spec.rb +0 -1
- data/spec/unit/face/certificate_request_spec.rb +0 -1
- data/spec/unit/face/certificate_revocation_list_spec.rb +0 -1
- data/spec/unit/face/certificate_spec.rb +7 -10
- 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/build_spec.rb +17 -17
- 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 +33 -34
- 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 +16 -17
- 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 +7 -8
- 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 +8 -9
- 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/ca_spec.rb +2 -4
- data/spec/unit/indirector/certificate/disabled_ca_spec.rb +1 -2
- data/spec/unit/indirector/certificate/file_spec.rb +2 -3
- data/spec/unit/indirector/certificate/rest_spec.rb +8 -10
- data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -1
- data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +1 -2
- 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/certificate_revocation_list/ca_spec.rb +1 -2
- data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +1 -2
- data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +1 -2
- data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +2 -3
- data/spec/unit/indirector/certificate_status/file_spec.rb +2 -3
- data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -1
- data/spec/unit/indirector/code_spec.rb +5 -6
- data/spec/unit/indirector/direct_file_server_spec.rb +33 -27
- data/spec/unit/indirector/envelope_spec.rb +1 -2
- data/spec/unit/indirector/exec_spec.rb +15 -14
- 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 +2 -4
- 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 +99 -93
- data/spec/unit/indirector/indirection_spec.rb +242 -226
- data/spec/unit/indirector/json_spec.rb +7 -9
- data/spec/unit/indirector/key/ca_spec.rb +2 -3
- data/spec/unit/indirector/key/disabled_ca_spec.rb +1 -2
- data/spec/unit/indirector/key/file_spec.rb +25 -26
- data/spec/unit/indirector/ldap_spec.rb +34 -41
- 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 +6 -6
- data/spec/unit/indirector/node/ldap_spec.rb +74 -76
- 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/write_only_yaml_spec.rb +1 -2
- 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 +47 -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 +74 -77
- 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 +31 -29
- data/spec/unit/indirector/yaml_spec.rb +33 -32
- data/spec/unit/indirector_spec.rb +1 -2
- data/spec/unit/info_service_spec.rb +3 -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/builder_spec.rb +5 -5
- 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/ca/v1_spec.rb +1 -1
- data/spec/unit/network/http/api/indirected_routes_spec.rb +22 -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 +1 -3
- data/spec/unit/network/http/compression_spec.rb +21 -22
- data/spec/unit/network/http/connection_spec.rb +39 -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/rack/rest_spec.rb +24 -27
- data/spec/unit/network/http/rack_spec.rb +5 -6
- 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/webrick/rest_spec.rb +40 -41
- data/spec/unit/network/http/webrick_spec.rb +49 -52
- 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 +16 -17
- data/spec/unit/network/rights_spec.rb +52 -53
- data/spec/unit/network/server_spec.rb +12 -13
- data/spec/unit/node/environment_spec.rb +16 -14
- data/spec/unit/node/facts_spec.rb +5 -7
- data/spec/unit/node_spec.rb +4 -10
- data/spec/unit/other/selinux_spec.rb +2 -3
- 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 +11 -9
- 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 +3 -4
- 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 +6 -6
- 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 +30 -27
- 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 +36 -36
- 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/augeas/augeas_spec.rb +192 -192
- data/spec/unit/provider/cisco_spec.rb +1 -2
- data/spec/unit/provider/command_spec.rb +9 -9
- data/spec/unit/provider/cron/crontab_spec.rb +10 -11
- data/spec/unit/provider/cron/parsed_spec.rb +22 -24
- 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/host/parsed_spec.rb +6 -6
- data/spec/unit/provider/interface/cisco_spec.rb +20 -24
- data/spec/unit/provider/ldap_spec.rb +61 -62
- data/spec/unit/provider/macauthorization_spec.rb +26 -47
- data/spec/unit/provider/mcx/mcxcontent_spec.rb +45 -47
- data/spec/unit/provider/mount/parsed_spec.rb +18 -24
- data/spec/unit/provider/mount_spec.rb +57 -66
- data/spec/unit/provider/naginator_spec.rb +13 -14
- data/spec/unit/provider/nameservice/directoryservice_spec.rb +35 -36
- data/spec/unit/provider/nameservice_spec.rb +38 -40
- data/spec/unit/provider/network_device_spec.rb +28 -28
- 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 +14 -16
- 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 +69 -71
- 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 +4 -4
- data/spec/unit/provider/package/zypper_spec.rb +87 -87
- data/spec/unit/provider/parsedfile_spec.rb +44 -45
- data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +120 -130
- data/spec/unit/provider/selboolean_spec.rb +9 -11
- data/spec/unit/provider/selmodule_spec.rb +20 -22
- 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 +37 -37
- data/spec/unit/provider/service/freebsd_spec.rb +18 -18
- data/spec/unit/provider/service/gentoo_spec.rb +50 -56
- data/spec/unit/provider/service/init_spec.rb +55 -55
- 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 -46
- data/spec/unit/provider/service/openwrt_spec.rb +26 -32
- 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 +93 -98
- data/spec/unit/provider/service/upstart_spec.rb +74 -72
- data/spec/unit/provider/service/windows_spec.rb +33 -41
- data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +54 -68
- data/spec/unit/provider/sshkey/parsed_spec.rb +7 -8
- 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 +15 -15
- 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/vlan/cisco_spec.rb +10 -12
- data/spec/unit/provider/yumrepo/inifile_spec.rb +75 -80
- data/spec/unit/provider/zfs/zfs_spec.rb +26 -21
- data/spec/unit/provider/zone/solaris_spec.rb +56 -42
- data/spec/unit/provider/zpool/zpool_spec.rb +19 -20
- data/spec/unit/provider_spec.rb +29 -29
- data/spec/unit/puppet_pal_2pec.rb +4 -5
- data/spec/unit/puppet_pal_spec.rb +0 -1
- data/spec/unit/puppet_spec.rb +7 -8
- 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 +18 -16
- 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/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 +226 -233
- data/spec/unit/ssl/base_spec.rb +14 -15
- data/spec/unit/ssl/certificate_authority/autosign_command_spec.rb +6 -7
- data/spec/unit/ssl/certificate_authority/interface_spec.rb +116 -113
- data/spec/unit/ssl/certificate_authority_spec.rb +258 -268
- data/spec/unit/ssl/certificate_factory_spec.rb +3 -5
- data/spec/unit/ssl/certificate_request_attributes_spec.rb +2 -3
- data/spec/unit/ssl/certificate_request_spec.rb +66 -67
- data/spec/unit/ssl/certificate_revocation_list_spec.rb +3 -4
- data/spec/unit/ssl/certificate_spec.rb +23 -25
- data/spec/unit/ssl/configuration_spec.rb +1 -4
- data/spec/unit/ssl/digest_spec.rb +0 -1
- data/spec/unit/ssl/host_spec.rb +217 -188
- data/spec/unit/ssl/inventory_spec.rb +25 -21
- data/spec/unit/ssl/key_spec.rb +30 -31
- data/spec/unit/ssl/validator_spec.rb +40 -40
- data/spec/unit/task_spec.rb +6 -7
- data/spec/unit/transaction/additional_resource_generator_spec.rb +6 -5
- data/spec/unit/transaction/event_manager_spec.rb +88 -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 +98 -100
- data/spec/unit/type/augeas_spec.rb +11 -10
- data/spec/unit/type/component_spec.rb +0 -1
- data/spec/unit/type/computer_spec.rb +7 -10
- data/spec/unit/type/cron_spec.rb +3 -7
- 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/host_spec.rb +2 -3
- data/spec/unit/type/interface_spec.rb +2 -3
- data/spec/unit/type/k5login_spec.rb +3 -4
- data/spec/unit/type/macauthorization_spec.rb +6 -8
- data/spec/unit/type/mailalias_spec.rb +2 -3
- data/spec/unit/type/maillist_spec.rb +6 -9
- data/spec/unit/type/mcx_spec.rb +4 -8
- data/spec/unit/type/mount_spec.rb +26 -38
- data/spec/unit/type/nagios_spec.rb +0 -1
- 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 +53 -54
- data/spec/unit/type/resources_spec.rb +86 -88
- data/spec/unit/type/schedule_spec.rb +24 -26
- data/spec/unit/type/scheduled_task_spec.rb +1 -2
- data/spec/unit/type/selboolean_spec.rb +5 -6
- data/spec/unit/type/selmodule_spec.rb +0 -1
- data/spec/unit/type/service_spec.rb +47 -47
- data/spec/unit/type/ssh_authorized_key_spec.rb +5 -35
- data/spec/unit/type/sshkey_spec.rb +0 -2
- 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 +41 -27
- data/spec/unit/type/vlan_spec.rb +2 -4
- data/spec/unit/type/whit_spec.rb +0 -1
- data/spec/unit/type/zfs_spec.rb +6 -7
- data/spec/unit/type/zone_spec.rb +14 -4
- data/spec/unit/type/zpool_spec.rb +4 -5
- data/spec/unit/type_spec.rb +54 -53
- data/spec/unit/util/at_fork_spec.rb +18 -19
- data/spec/unit/util/autoload_spec.rb +53 -54
- data/spec/unit/util/backups_spec.rb +34 -35
- data/spec/unit/util/character_encoding_spec.rb +8 -8
- 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 +187 -162
- data/spec/unit/util/execution_stub_spec.rb +0 -1
- data/spec/unit/util/feature_spec.rb +13 -13
- 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 -66
- 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/nagios_maker_spec.rb +35 -36
- data/spec/unit/util/network_device/cisco/device_spec.rb +59 -50
- data/spec/unit/util/network_device/cisco/facts_spec.rb +4 -5
- data/spec/unit/util/network_device/cisco/interface_spec.rb +29 -20
- data/spec/unit/util/network_device/config_spec.rb +0 -1
- data/spec/unit/util/network_device/ipcalc_spec.rb +0 -1
- data/spec/unit/util/network_device/transport/base_spec.rb +5 -6
- data/spec/unit/util/network_device/transport/ssh_spec.rb +94 -60
- data/spec/unit/util/network_device/transport/telnet_spec.rb +18 -14
- 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 +13 -14
- 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 +14 -14
- 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 -59
- 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/files'
         | 
| 4 3 |  | 
| @@ -31,60 +30,60 @@ describe Puppet::Provider::ParsedFile do | |
| 31 30 |  | 
| 32 31 | 
             
              describe "when generating a list of instances" do
         | 
| 33 32 | 
             
                it "should return an instance for each record parsed from all of the registered targets" do
         | 
| 34 | 
            -
                  provider. | 
| 35 | 
            -
                  provider. | 
| 33 | 
            +
                  expect(provider).to receive(:targets).and_return(%w{/one /two})
         | 
| 34 | 
            +
                  allow(provider).to receive(:skip_record?).and_return(false)
         | 
| 36 35 | 
             
                  one = [:uno1, :uno2]
         | 
| 37 36 | 
             
                  two = [:dos1, :dos2]
         | 
| 38 | 
            -
                  provider. | 
| 39 | 
            -
                  provider. | 
| 37 | 
            +
                  expect(provider).to receive(:prefetch_target).with("/one").and_return(one)
         | 
| 38 | 
            +
                  expect(provider).to receive(:prefetch_target).with("/two").and_return(two)
         | 
| 40 39 |  | 
| 41 40 | 
             
                  results = []
         | 
| 42 41 | 
             
                  (one + two).each do |inst|
         | 
| 43 42 | 
             
                    results << inst.to_s + "_instance"
         | 
| 44 | 
            -
                    provider. | 
| 43 | 
            +
                    expect(provider).to receive(:new).with(inst).and_return(results[-1])
         | 
| 45 44 | 
             
                  end
         | 
| 46 45 |  | 
| 47 46 | 
             
                  expect(provider.instances).to eq(results)
         | 
| 48 47 | 
             
                end
         | 
| 49 48 |  | 
| 50 49 | 
             
                it "should ignore target when retrieve fails" do
         | 
| 51 | 
            -
                  provider. | 
| 52 | 
            -
                  provider. | 
| 53 | 
            -
                  provider. | 
| 50 | 
            +
                  expect(provider).to receive(:targets).and_return(%w{/one /two /three})
         | 
| 51 | 
            +
                  allow(provider).to receive(:skip_record?).and_return(false)
         | 
| 52 | 
            +
                  expect(provider).to receive(:retrieve).with("/one").and_return([
         | 
| 54 53 | 
             
                    {:name => 'target1_record1'},
         | 
| 55 54 | 
             
                    {:name => 'target1_record2'}
         | 
| 56 | 
            -
                  ]
         | 
| 57 | 
            -
                  provider. | 
| 58 | 
            -
                  provider. | 
| 55 | 
            +
                  ])
         | 
| 56 | 
            +
                  expect(provider).to receive(:retrieve).with("/two").and_raise(Puppet::Util::FileType::FileReadError, "some error")
         | 
| 57 | 
            +
                  expect(provider).to receive(:retrieve).with("/three").and_return([
         | 
| 59 58 | 
             
                    {:name => 'target3_record1'},
         | 
| 60 59 | 
             
                    {:name => 'target3_record2'}
         | 
| 61 | 
            -
                  ]
         | 
| 62 | 
            -
                  Puppet. | 
| 63 | 
            -
                  provider. | 
| 64 | 
            -
                  provider. | 
| 65 | 
            -
                  provider. | 
| 66 | 
            -
                  provider. | 
| 60 | 
            +
                  ])
         | 
| 61 | 
            +
                  expect(Puppet).to receive(:err).with('Could not prefetch parsedfile_type provider \'parsedfile_provider\' target \'/two\': some error. Treating as empty')
         | 
| 62 | 
            +
                  expect(provider).to receive(:new).with(:name => 'target1_record1', :on_disk => true, :target => '/one', :ensure => :present).and_return('r1')
         | 
| 63 | 
            +
                  expect(provider).to receive(:new).with(:name => 'target1_record2', :on_disk => true, :target => '/one', :ensure => :present).and_return('r2')
         | 
| 64 | 
            +
                  expect(provider).to receive(:new).with(:name => 'target3_record1', :on_disk => true, :target => '/three', :ensure => :present).and_return('r3')
         | 
| 65 | 
            +
                  expect(provider).to receive(:new).with(:name => 'target3_record2', :on_disk => true, :target => '/three', :ensure => :present).and_return('r4')
         | 
| 67 66 |  | 
| 68 67 | 
             
                  expect(provider.instances).to eq(%w{r1 r2 r3 r4})
         | 
| 69 68 | 
             
                end
         | 
| 70 69 |  | 
| 71 70 | 
             
                it "should skip specified records" do
         | 
| 72 | 
            -
                  provider. | 
| 73 | 
            -
                  provider. | 
| 74 | 
            -
                  provider. | 
| 71 | 
            +
                  expect(provider).to receive(:targets).and_return(%w{/one})
         | 
| 72 | 
            +
                  expect(provider).to receive(:skip_record?).with(:uno).and_return(false)
         | 
| 73 | 
            +
                  expect(provider).to receive(:skip_record?).with(:dos).and_return(true)
         | 
| 75 74 | 
             
                  one = [:uno, :dos]
         | 
| 76 | 
            -
                  provider. | 
| 75 | 
            +
                  expect(provider).to receive(:prefetch_target).and_return(one)
         | 
| 77 76 |  | 
| 78 | 
            -
                  provider. | 
| 79 | 
            -
                  provider. | 
| 77 | 
            +
                  expect(provider).to receive(:new).with(:uno).and_return("eh")
         | 
| 78 | 
            +
                  expect(provider).not_to receive(:new).with(:dos)
         | 
| 80 79 |  | 
| 81 80 | 
             
                  provider.instances
         | 
| 82 81 | 
             
                end
         | 
| 83 82 | 
             
              end
         | 
| 84 83 |  | 
| 85 84 | 
             
              describe "when matching resources to existing records" do
         | 
| 86 | 
            -
                let(:first_resource) {  | 
| 87 | 
            -
                let(:second_resource) {  | 
| 85 | 
            +
                let(:first_resource) { double(:one, :name => :one) }
         | 
| 86 | 
            +
                let(:second_resource) { double(:two, :name => :two) }
         | 
| 88 87 |  | 
| 89 88 | 
             
                let(:resources) {{:one => first_resource, :two => second_resource}}
         | 
| 90 89 |  | 
| @@ -102,41 +101,41 @@ describe Puppet::Provider::ParsedFile do | |
| 102 101 | 
             
              describe "when flushing a file's records to disk" do
         | 
| 103 102 | 
             
                before do
         | 
| 104 103 | 
             
                  # This way we start with some @records, like we would in real life.
         | 
| 105 | 
            -
                  provider. | 
| 104 | 
            +
                  allow(provider).to receive(:retrieve).and_return([])
         | 
| 106 105 | 
             
                  provider.default_target = "/foo/bar"
         | 
| 107 106 | 
             
                  provider.initvars
         | 
| 108 107 | 
             
                  provider.prefetch
         | 
| 109 108 |  | 
| 110 109 | 
             
                  @filetype = Puppet::Util::FileType.filetype(:flat).new("/my/file")
         | 
| 111 | 
            -
                  Puppet::Util::FileType.filetype(:flat). | 
| 110 | 
            +
                  allow(Puppet::Util::FileType.filetype(:flat)).to receive(:new).with("/my/file").and_return(@filetype)
         | 
| 112 111 |  | 
| 113 | 
            -
                  @filetype. | 
| 112 | 
            +
                  allow(@filetype).to receive(:write)
         | 
| 114 113 | 
             
                end
         | 
| 115 114 |  | 
| 116 115 | 
             
                it "should back up the file being written if the filetype can be backed up" do
         | 
| 117 | 
            -
                  @filetype. | 
| 116 | 
            +
                  expect(@filetype).to receive(:backup)
         | 
| 118 117 |  | 
| 119 118 | 
             
                  provider.flush_target("/my/file")
         | 
| 120 119 | 
             
                end
         | 
| 121 120 |  | 
| 122 121 | 
             
                it "should not try to back up the file if the filetype cannot be backed up" do
         | 
| 123 122 | 
             
                  @filetype = Puppet::Util::FileType.filetype(:ram).new("/my/file")
         | 
| 124 | 
            -
                  Puppet::Util::FileType.filetype(:flat). | 
| 123 | 
            +
                  expect(Puppet::Util::FileType.filetype(:flat)).to receive(:new).and_return(@filetype)
         | 
| 125 124 |  | 
| 126 | 
            -
                  @filetype. | 
| 125 | 
            +
                  allow(@filetype).to receive(:write)
         | 
| 127 126 |  | 
| 128 127 | 
             
                  provider.flush_target("/my/file")
         | 
| 129 128 | 
             
                end
         | 
| 130 129 |  | 
| 131 130 | 
             
                it "should not back up the file more than once between calls to 'prefetch'" do
         | 
| 132 | 
            -
                  @filetype. | 
| 131 | 
            +
                  expect(@filetype).to receive(:backup).once
         | 
| 133 132 |  | 
| 134 133 | 
             
                  provider.flush_target("/my/file")
         | 
| 135 134 | 
             
                  provider.flush_target("/my/file")
         | 
| 136 135 | 
             
                end
         | 
| 137 136 |  | 
| 138 137 | 
             
                it "should back the file up again once the file has been reread" do
         | 
| 139 | 
            -
                  @filetype. | 
| 138 | 
            +
                  expect(@filetype).to receive(:backup).twice
         | 
| 140 139 |  | 
| 141 140 | 
             
                  provider.flush_target("/my/file")
         | 
| 142 141 | 
             
                  provider.prefetch
         | 
| @@ -147,19 +146,19 @@ describe Puppet::Provider::ParsedFile do | |
| 147 146 | 
             
              describe "when flushing multiple files" do
         | 
| 148 147 | 
             
                describe "and an error is encountered" do
         | 
| 149 148 | 
             
                  it "the other file does not fail" do
         | 
| 150 | 
            -
                    provider. | 
| 149 | 
            +
                    allow(provider).to receive(:backup_target)
         | 
| 151 150 |  | 
| 152 151 | 
             
                    bad_file = 'broken'
         | 
| 153 152 | 
             
                    good_file = 'writable'
         | 
| 154 153 |  | 
| 155 | 
            -
                    bad_writer =  | 
| 156 | 
            -
                    bad_writer. | 
| 154 | 
            +
                    bad_writer = double('bad')
         | 
| 155 | 
            +
                    expect(bad_writer).to receive(:write).and_raise(Exception, "Failed to write to bad file")
         | 
| 157 156 |  | 
| 158 | 
            -
                    good_writer =  | 
| 159 | 
            -
                    good_writer. | 
| 157 | 
            +
                    good_writer = double('good')
         | 
| 158 | 
            +
                    expect(good_writer).to receive(:write).and_return(nil)
         | 
| 160 159 |  | 
| 161 | 
            -
                    provider. | 
| 162 | 
            -
                    provider. | 
| 160 | 
            +
                    allow(provider).to receive(:target_object).with(bad_file).and_return(bad_writer)
         | 
| 161 | 
            +
                    allow(provider).to receive(:target_object).with(good_file).and_return(good_writer)
         | 
| 163 162 |  | 
| 164 163 | 
             
                    bad_resource = parsed_type.new(:name => 'one', :target => bad_file)
         | 
| 165 164 | 
             
                    good_resource = parsed_type.new(:name => 'two', :target => good_file)
         | 
| @@ -190,8 +189,8 @@ describe "A very basic provider based on ParsedFile" do | |
| 190 189 | 
             
                example_provider_class.initvars
         | 
| 191 190 | 
             
                example_provider_class.prefetch
         | 
| 192 191 | 
             
                # evade a race between multiple invocations of the header method
         | 
| 193 | 
            -
                example_provider_class. | 
| 194 | 
            -
                   | 
| 192 | 
            +
                allow(example_provider_class).to receive(:header).
         | 
| 193 | 
            +
                  and_return("# HEADER As added by puppet.\n")
         | 
| 195 194 | 
             
                example_provider_class
         | 
| 196 195 | 
             
              end
         | 
| 197 196 |  | 
| @@ -208,7 +207,7 @@ describe "A very basic provider based on ParsedFile" do | |
| 208 207 | 
             
                let(:input_records) { provider.parse(input_text) }
         | 
| 209 208 |  | 
| 210 209 | 
             
                before :each do
         | 
| 211 | 
            -
                  provider. | 
| 210 | 
            +
                  allow(provider).to receive(:native_header_regex).and_return(regex)
         | 
| 212 211 | 
             
                end
         | 
| 213 212 |  | 
| 214 213 | 
             
                it "should move the native header to the top" do
         | 
| @@ -217,7 +216,7 @@ describe "A very basic provider based on ParsedFile" do | |
| 217 216 |  | 
| 218 217 | 
             
                context "and dropping native headers found in input" do
         | 
| 219 218 | 
             
                  before :each do
         | 
| 220 | 
            -
                    provider. | 
| 219 | 
            +
                    allow(provider).to receive(:drop_native_header).and_return(true)
         | 
| 221 220 | 
             
                  end
         | 
| 222 221 |  | 
| 223 222 | 
             
                  it "should not include the native header in the output" do
         | 
| @@ -1,4 +1,3 @@ | |
| 1 | 
            -
            #! /usr/bin/env ruby
         | 
| 2 1 | 
             
            require 'spec_helper'
         | 
| 3 2 |  | 
| 4 3 | 
             
            require 'puppet/util/windows/taskscheduler' if Puppet.features.microsoft_windows?
         | 
| @@ -12,7 +11,7 @@ shared_examples_for "a trigger that handles start_date and start_time" do | |
| 12 11 | 
             
              end
         | 
| 13 12 |  | 
| 14 13 | 
             
              before :each do
         | 
| 15 | 
            -
                Win32::TaskScheduler. | 
| 14 | 
            +
                allow_any_instance_of(Win32::TaskScheduler).to receive(:save)
         | 
| 16 15 | 
             
              end
         | 
| 17 16 |  | 
| 18 17 | 
             
              describe 'the given start_date' do
         | 
| @@ -111,27 +110,27 @@ end | |
| 111 110 |  | 
| 112 111 | 
             
            describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if => Puppet.features.microsoft_windows? do
         | 
| 113 112 | 
             
              before :each do
         | 
| 114 | 
            -
                Puppet::Type.type(:scheduled_task). | 
| 113 | 
            +
                allow(Puppet::Type.type(:scheduled_task)).to receive(:defaultprovider).and_return(described_class)
         | 
| 115 114 | 
             
              end
         | 
| 116 115 |  | 
| 117 116 | 
             
              describe 'when retrieving' do
         | 
| 118 117 | 
             
                before :each do
         | 
| 119 | 
            -
                  @mock_task =  | 
| 120 | 
            -
                   | 
| 121 | 
            -
                  described_class.any_instance.stubs(:task).returns(@mock_task)
         | 
| 118 | 
            +
                  @mock_task = double()
         | 
| 119 | 
            +
                  allow_any_instance_of(described_class).to receive(:task).and_return(@mock_task)
         | 
| 122 120 |  | 
| 123 | 
            -
                  Win32::TaskScheduler. | 
| 121 | 
            +
                  allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task)
         | 
| 124 122 | 
             
                end
         | 
| 123 | 
            +
             | 
| 125 124 | 
             
                let(:resource) { Puppet::Type.type(:scheduled_task).new(:name => 'Test Task', :command => 'C:\Windows\System32\notepad.exe') }
         | 
| 126 125 |  | 
| 127 126 | 
             
                describe 'the triggers for a task' do
         | 
| 128 127 | 
             
                  describe 'with only one trigger' do
         | 
| 129 128 | 
             
                    before :each do
         | 
| 130 | 
            -
                      @mock_task. | 
| 129 | 
            +
                      expect(@mock_task).to receive(:trigger_count).and_return(1)
         | 
| 131 130 | 
             
                    end
         | 
| 132 131 |  | 
| 133 132 | 
             
                    it 'should handle a single daily trigger' do
         | 
| 134 | 
            -
                      @mock_task. | 
| 133 | 
            +
                      expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 135 134 | 
             
                        'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_DAILY,
         | 
| 136 135 | 
             
                        'start_year'   => 2011,
         | 
| 137 136 | 
             
                        'start_month'  => 9,
         | 
| @@ -155,7 +154,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 155 154 | 
             
                    end
         | 
| 156 155 |  | 
| 157 156 | 
             
                    it 'should handle a single daily with repeat trigger' do
         | 
| 158 | 
            -
                      @mock_task. | 
| 157 | 
            +
                      expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 159 158 | 
             
                        'trigger_type'     => Win32::TaskScheduler::TASK_TIME_TRIGGER_DAILY,
         | 
| 160 159 | 
             
                        'start_year'       => 2011,
         | 
| 161 160 | 
             
                        'start_month'      => 9,
         | 
| @@ -185,7 +184,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 185 184 | 
             
                                               Win32::TaskScheduler::WEDNESDAY |
         | 
| 186 185 | 
             
                                               Win32::TaskScheduler::FRIDAY |
         | 
| 187 186 | 
             
                                               Win32::TaskScheduler::SUNDAY
         | 
| 188 | 
            -
                      @mock_task. | 
| 187 | 
            +
                      expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 189 188 | 
             
                        'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_WEEKLY,
         | 
| 190 189 | 
             
                        'start_year'   => 2011,
         | 
| 191 190 | 
             
                        'start_month'  => 9,
         | 
| @@ -220,7 +219,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 220 219 | 
             
                                         Win32::TaskScheduler::DECEMBER
         | 
| 221 220 | 
             
                      #                1   3        5        15        'last'
         | 
| 222 221 | 
             
                      scheduled_days = 1 | 1 << 2 | 1 << 4 | 1 << 14 | 1 << 31
         | 
| 223 | 
            -
                      @mock_task. | 
| 222 | 
            +
                      expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 224 223 | 
             
                        'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_MONTHLYDATE,
         | 
| 225 224 | 
             
                        'start_year'   => 2011,
         | 
| 226 225 | 
             
                        'start_month'  => 9,
         | 
| @@ -257,7 +256,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 257 256 | 
             
                                               Win32::TaskScheduler::WEDNESDAY |
         | 
| 258 257 | 
             
                                               Win32::TaskScheduler::FRIDAY |
         | 
| 259 258 | 
             
                                               Win32::TaskScheduler::SUNDAY
         | 
| 260 | 
            -
                      @mock_task. | 
| 259 | 
            +
                      expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 261 260 | 
             
                        'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_MONTHLYDOW,
         | 
| 262 261 | 
             
                        'start_year'   => 2011,
         | 
| 263 262 | 
             
                        'start_month'  => 9,
         | 
| @@ -287,7 +286,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 287 286 | 
             
                    end
         | 
| 288 287 |  | 
| 289 288 | 
             
                    it 'should handle a single one-time trigger' do
         | 
| 290 | 
            -
                      @mock_task. | 
| 289 | 
            +
                      expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 291 290 | 
             
                        'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 292 291 | 
             
                        'start_year'   => 2011,
         | 
| 293 292 | 
             
                        'start_month'  => 9,
         | 
| @@ -310,8 +309,8 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 310 309 | 
             
                  end
         | 
| 311 310 |  | 
| 312 311 | 
             
                  it 'should handle multiple triggers' do
         | 
| 313 | 
            -
                    @mock_task. | 
| 314 | 
            -
                    @mock_task. | 
| 312 | 
            +
                    expect(@mock_task).to receive(:trigger_count).and_return(3)
         | 
| 313 | 
            +
                    expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 315 314 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 316 315 | 
             
                      'start_year'   => 2011,
         | 
| 317 316 | 
             
                      'start_month'  => 10,
         | 
| @@ -320,7 +319,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 320 319 | 
             
                      'start_minute' => 21,
         | 
| 321 320 | 
             
                      'flags'        => 0,
         | 
| 322 321 | 
             
                    })
         | 
| 323 | 
            -
                    @mock_task. | 
| 322 | 
            +
                    expect(@mock_task).to receive(:trigger).with(1).and_return({
         | 
| 324 323 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 325 324 | 
             
                      'start_year'   => 2012,
         | 
| 326 325 | 
             
                      'start_month'  => 11,
         | 
| @@ -329,7 +328,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 329 328 | 
             
                      'start_minute' => 22,
         | 
| 330 329 | 
             
                      'flags'        => 0,
         | 
| 331 330 | 
             
                    })
         | 
| 332 | 
            -
                    @mock_task. | 
| 331 | 
            +
                    expect(@mock_task).to receive(:trigger).with(2).and_return({
         | 
| 333 332 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 334 333 | 
             
                      'start_year'   => 2013,
         | 
| 335 334 | 
             
                      'start_month'  => 12,
         | 
| @@ -371,8 +370,8 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 371 370 | 
             
                  end
         | 
| 372 371 |  | 
| 373 372 | 
             
                  it 'should handle multiple triggers with repeat triggers' do
         | 
| 374 | 
            -
                    @mock_task. | 
| 375 | 
            -
                    @mock_task. | 
| 373 | 
            +
                    expect(@mock_task).to receive(:trigger_count).and_return(3)
         | 
| 374 | 
            +
                    expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 376 375 | 
             
                      'trigger_type'     => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 377 376 | 
             
                      'start_year'       => 2011,
         | 
| 378 377 | 
             
                      'start_month'      => 10,
         | 
| @@ -383,7 +382,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 383 382 | 
             
                      'minutes_duration' => 60,
         | 
| 384 383 | 
             
                      'flags'            => 0,
         | 
| 385 384 | 
             
                    })
         | 
| 386 | 
            -
                    @mock_task. | 
| 385 | 
            +
                    expect(@mock_task).to receive(:trigger).with(1).and_return({
         | 
| 387 386 | 
             
                      'trigger_type'     => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 388 387 | 
             
                      'start_year'       => 2012,
         | 
| 389 388 | 
             
                      'start_month'      => 11,
         | 
| @@ -394,7 +393,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 394 393 | 
             
                      'minutes_duration' => 120,
         | 
| 395 394 | 
             
                      'flags'            => 0,
         | 
| 396 395 | 
             
                    })
         | 
| 397 | 
            -
                    @mock_task. | 
| 396 | 
            +
                    expect(@mock_task).to receive(:trigger).with(2).and_return({
         | 
| 398 397 | 
             
                      'trigger_type'     => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 399 398 | 
             
                      'start_year'       => 2013,
         | 
| 400 399 | 
             
                      'start_month'      => 12,
         | 
| @@ -438,8 +437,8 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 438 437 | 
             
                  end
         | 
| 439 438 |  | 
| 440 439 | 
             
                  it 'should skip triggers Win32::TaskScheduler cannot handle' do
         | 
| 441 | 
            -
                    @mock_task. | 
| 442 | 
            -
                    @mock_task. | 
| 440 | 
            +
                    expect(@mock_task).to receive(:trigger_count).and_return(3)
         | 
| 441 | 
            +
                    expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 443 442 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 444 443 | 
             
                      'start_year'   => 2011,
         | 
| 445 444 | 
             
                      'start_month'  => 10,
         | 
| @@ -448,10 +447,10 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 448 447 | 
             
                      'start_minute' => 21,
         | 
| 449 448 | 
             
                      'flags'        => 0,
         | 
| 450 449 | 
             
                    })
         | 
| 451 | 
            -
                    @mock_task. | 
| 450 | 
            +
                    expect(@mock_task).to receive(:trigger).with(1).and_raise(
         | 
| 452 451 | 
             
                      Win32::TaskScheduler::Error.new('Unhandled trigger type!')
         | 
| 453 452 | 
             
                    )
         | 
| 454 | 
            -
                    @mock_task. | 
| 453 | 
            +
                    expect(@mock_task).to receive(:trigger).with(2).and_return({
         | 
| 455 454 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 456 455 | 
             
                      'start_year'   => 2013,
         | 
| 457 456 | 
             
                      'start_month'  => 12,
         | 
| @@ -484,8 +483,8 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 484 483 | 
             
                  end
         | 
| 485 484 |  | 
| 486 485 | 
             
                  it 'should skip trigger types Puppet does not handle' do
         | 
| 487 | 
            -
                    @mock_task. | 
| 488 | 
            -
                    @mock_task. | 
| 486 | 
            +
                    expect(@mock_task).to receive(:trigger_count).and_return(3)
         | 
| 487 | 
            +
                    expect(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 489 488 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 490 489 | 
             
                      'start_year'   => 2011,
         | 
| 491 490 | 
             
                      'start_month'  => 10,
         | 
| @@ -494,10 +493,10 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 494 493 | 
             
                      'start_minute' => 21,
         | 
| 495 494 | 
             
                      'flags'        => 0,
         | 
| 496 495 | 
             
                    })
         | 
| 497 | 
            -
                    @mock_task. | 
| 496 | 
            +
                    expect(@mock_task).to receive(:trigger).with(1).and_return({
         | 
| 498 497 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_EVENT_TRIGGER_AT_LOGON,
         | 
| 499 498 | 
             
                    })
         | 
| 500 | 
            -
                    @mock_task. | 
| 499 | 
            +
                    expect(@mock_task).to receive(:trigger).with(2).and_return({
         | 
| 501 500 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 502 501 | 
             
                      'start_year'   => 2013,
         | 
| 503 502 | 
             
                      'start_month'  => 12,
         | 
| @@ -531,46 +530,46 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 531 530 | 
             
                end
         | 
| 532 531 |  | 
| 533 532 | 
             
                it 'should get the working directory from the working_directory on the task' do
         | 
| 534 | 
            -
                  @mock_task. | 
| 533 | 
            +
                  expect(@mock_task).to receive(:working_directory).and_return('C:\Windows\System32')
         | 
| 535 534 |  | 
| 536 535 | 
             
                  expect(resource.provider.working_dir).to eq('C:\Windows\System32')
         | 
| 537 536 | 
             
                end
         | 
| 538 537 |  | 
| 539 538 | 
             
                it 'should get the command from the application_name on the task' do
         | 
| 540 | 
            -
                  @mock_task. | 
| 539 | 
            +
                  expect(@mock_task).to receive(:application_name).and_return('C:\Windows\System32\notepad.exe')
         | 
| 541 540 |  | 
| 542 541 | 
             
                  expect(resource.provider.command).to eq('C:\Windows\System32\notepad.exe')
         | 
| 543 542 | 
             
                end
         | 
| 544 543 |  | 
| 545 544 | 
             
                it 'should get the command arguments from the parameters on the task' do
         | 
| 546 | 
            -
                  @mock_task. | 
| 545 | 
            +
                  expect(@mock_task).to receive(:parameters).and_return('these are my arguments')
         | 
| 547 546 |  | 
| 548 547 | 
             
                  expect(resource.provider.arguments).to eq('these are my arguments')
         | 
| 549 548 | 
             
                end
         | 
| 550 549 |  | 
| 551 550 | 
             
                it 'should get the user from the account_information on the task' do
         | 
| 552 | 
            -
                  @mock_task. | 
| 551 | 
            +
                  expect(@mock_task).to receive(:account_information).and_return('this is my user')
         | 
| 553 552 |  | 
| 554 553 | 
             
                  expect(resource.provider.user).to eq('this is my user')
         | 
| 555 554 | 
             
                end
         | 
| 556 555 |  | 
| 557 556 | 
             
                describe 'whether the task is enabled' do
         | 
| 558 557 | 
             
                  it 'should report tasks with the disabled bit set as disabled' do
         | 
| 559 | 
            -
                    @mock_task. | 
| 558 | 
            +
                    allow(@mock_task).to receive(:flags).and_return(Win32::TaskScheduler::DISABLED)
         | 
| 560 559 |  | 
| 561 560 | 
             
                    expect(resource.provider.enabled).to eq(:false)
         | 
| 562 561 | 
             
                  end
         | 
| 563 562 |  | 
| 564 563 | 
             
                  it 'should report tasks without the disabled bit set as enabled' do
         | 
| 565 | 
            -
                    @mock_task. | 
| 564 | 
            +
                    allow(@mock_task).to receive(:flags).and_return(~Win32::TaskScheduler::DISABLED)
         | 
| 566 565 |  | 
| 567 566 | 
             
                    expect(resource.provider.enabled).to eq(:true)
         | 
| 568 567 | 
             
                  end
         | 
| 569 568 |  | 
| 570 569 | 
             
                  it 'should not consider triggers for determining if the task is enabled' do
         | 
| 571 | 
            -
                    @mock_task. | 
| 572 | 
            -
                    @mock_task. | 
| 573 | 
            -
                    @mock_task. | 
| 570 | 
            +
                    allow(@mock_task).to receive(:flags).and_return(~Win32::TaskScheduler::DISABLED)
         | 
| 571 | 
            +
                    allow(@mock_task).to receive(:trigger_count).and_return(1)
         | 
| 572 | 
            +
                    allow(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 574 573 | 
             
                      'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 575 574 | 
             
                      'start_year'   => 2011,
         | 
| 576 575 | 
             
                      'start_month'  => 10,
         | 
| @@ -587,16 +586,15 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 587 586 |  | 
| 588 587 | 
             
              describe '#exists?' do
         | 
| 589 588 | 
             
                before :each do
         | 
| 590 | 
            -
                  @mock_task =  | 
| 591 | 
            -
                   | 
| 592 | 
            -
                  described_class.any_instance.stubs(:task).returns(@mock_task)
         | 
| 589 | 
            +
                  @mock_task = instance_double(Win32::TaskScheduler)
         | 
| 590 | 
            +
                  allow_any_instance_of(described_class).to receive(:task).and_return(@mock_task)
         | 
| 593 591 |  | 
| 594 | 
            -
                  Win32::TaskScheduler. | 
| 592 | 
            +
                  allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task)
         | 
| 595 593 | 
             
                end
         | 
| 596 594 | 
             
                let(:resource) { Puppet::Type.type(:scheduled_task).new(:name => 'Test Task', :command => 'C:\Windows\System32\notepad.exe') }
         | 
| 597 595 |  | 
| 598 596 | 
             
                it "should delegate to Win32::TaskScheduler using the resource's name" do
         | 
| 599 | 
            -
                  @mock_task. | 
| 597 | 
            +
                  expect(@mock_task).to receive(:exists?).with('Test Task').and_return(true)
         | 
| 600 598 |  | 
| 601 599 | 
             
                  expect(resource.provider.exists?).to eq(true)
         | 
| 602 600 | 
             
                end
         | 
| @@ -604,13 +602,11 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 604 602 |  | 
| 605 603 | 
             
              describe '#clear_task' do
         | 
| 606 604 | 
             
                before :each do
         | 
| 607 | 
            -
                  @mock_task     =  | 
| 608 | 
            -
                  @new_mock_task =  | 
| 609 | 
            -
                   | 
| 610 | 
            -
                  @new_mock_task.responds_like(Win32::TaskScheduler.new)
         | 
| 611 | 
            -
                  Win32::TaskScheduler.stubs(:new).returns(@mock_task, @new_mock_task)
         | 
| 605 | 
            +
                  @mock_task     = instance_double(Win32::TaskScheduler)
         | 
| 606 | 
            +
                  @new_mock_task = instance_double(Win32::TaskScheduler)
         | 
| 607 | 
            +
                  allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task, @new_mock_task)
         | 
| 612 608 |  | 
| 613 | 
            -
                  described_class. | 
| 609 | 
            +
                  allow_any_instance_of(described_class).to receive(:exists?).and_return(false)
         | 
| 614 610 | 
             
                end
         | 
| 615 611 | 
             
                let(:resource) { Puppet::Type.type(:scheduled_task).new(:name => 'Test Task', :command => 'C:\Windows\System32\notepad.exe') }
         | 
| 616 612 |  | 
| @@ -624,8 +620,8 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 624 620 | 
             
                end
         | 
| 625 621 |  | 
| 626 622 | 
             
                it 'should clear the cached list of triggers for the task' do
         | 
| 627 | 
            -
                  @mock_task. | 
| 628 | 
            -
                  @mock_task. | 
| 623 | 
            +
                  allow(@mock_task).to receive(:trigger_count).and_return(1)
         | 
| 624 | 
            +
                  allow(@mock_task).to receive(:trigger).with(0).and_return({
         | 
| 629 625 | 
             
                    'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 630 626 | 
             
                    'start_year'   => 2011,
         | 
| 631 627 | 
             
                    'start_month'  => 10,
         | 
| @@ -634,8 +630,8 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 634 630 | 
             
                    'start_minute' => 21,
         | 
| 635 631 | 
             
                    'flags'        => 0,
         | 
| 636 632 | 
             
                  })
         | 
| 637 | 
            -
                  @new_mock_task. | 
| 638 | 
            -
                  @new_mock_task. | 
| 633 | 
            +
                  allow(@new_mock_task).to receive(:trigger_count).and_return(1)
         | 
| 634 | 
            +
                  allow(@new_mock_task).to receive(:trigger).with(0).and_return({
         | 
| 639 635 | 
             
                    'trigger_type' => Win32::TaskScheduler::TASK_TIME_TRIGGER_ONCE,
         | 
| 640 636 | 
             
                    'start_year'   => 2012,
         | 
| 641 637 | 
             
                    'start_month'  => 11,
         | 
| @@ -675,11 +671,11 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 675 671 | 
             
              describe '.instances' do
         | 
| 676 672 | 
             
                it 'should use the list of .job files to construct the list of scheduled_tasks' do
         | 
| 677 673 | 
             
                  job_files = ['foo.job', 'bar.job', 'baz.job']
         | 
| 678 | 
            -
                  Win32::TaskScheduler. | 
| 674 | 
            +
                  allow_any_instance_of(Win32::TaskScheduler).to receive(:tasks).and_return(job_files)
         | 
| 679 675 | 
             
                  job_files.each do |job|
         | 
| 680 676 | 
             
                    job = File.basename(job, '.job')
         | 
| 681 677 |  | 
| 682 | 
            -
                    described_class. | 
| 678 | 
            +
                    expect(described_class).to receive(:new).with(:provider => :win32_taskscheduler, :name => job)
         | 
| 683 679 | 
             
                  end
         | 
| 684 680 |  | 
| 685 681 | 
             
                  described_class.instances
         | 
| @@ -690,27 +686,27 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 690 686 | 
             
                let(:resource) { described_class.new(:name => 'foobar', :command => 'C:\Windows\System32\notepad.exe') }
         | 
| 691 687 |  | 
| 692 688 | 
             
                it 'should consider the user as in sync if the name matches' do
         | 
| 693 | 
            -
                  Puppet::Util::Windows::SID. | 
| 689 | 
            +
                  expect(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('joe').twice.and_return('SID A')
         | 
| 694 690 |  | 
| 695 691 | 
             
                  expect(resource).to be_user_insync('joe', ['joe'])
         | 
| 696 692 | 
             
                end
         | 
| 697 693 |  | 
| 698 694 | 
             
                it 'should consider the user as in sync if the current user is fully qualified' do
         | 
| 699 | 
            -
                  Puppet::Util::Windows::SID. | 
| 700 | 
            -
                  Puppet::Util::Windows::SID. | 
| 695 | 
            +
                  expect(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('joe').and_return('SID A')
         | 
| 696 | 
            +
                  expect(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('MACHINE\joe').and_return('SID A')
         | 
| 701 697 |  | 
| 702 698 | 
             
                  expect(resource).to be_user_insync('MACHINE\joe', ['joe'])
         | 
| 703 699 | 
             
                end
         | 
| 704 700 |  | 
| 705 701 | 
             
                it 'should consider a current user of the empty string to be the same as the system user' do
         | 
| 706 | 
            -
                  Puppet::Util::Windows::SID. | 
| 702 | 
            +
                  expect(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('system').twice.and_return('SYSTEM SID')
         | 
| 707 703 |  | 
| 708 704 | 
             
                  expect(resource).to be_user_insync('', ['system'])
         | 
| 709 705 | 
             
                end
         | 
| 710 706 |  | 
| 711 707 | 
             
                it 'should consider different users as being different' do
         | 
| 712 | 
            -
                  Puppet::Util::Windows::SID. | 
| 713 | 
            -
                  Puppet::Util::Windows::SID. | 
| 708 | 
            +
                  expect(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('joe').and_return('SID A')
         | 
| 709 | 
            +
                  expect(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('bob').and_return('SID B')
         | 
| 714 710 |  | 
| 715 711 | 
             
                  expect(resource).not_to be_user_insync('joe', ['bob'])
         | 
| 716 712 | 
             
                end
         | 
| @@ -1558,11 +1554,10 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1558 1554 | 
             
                end
         | 
| 1559 1555 |  | 
| 1560 1556 | 
             
                before :each do
         | 
| 1561 | 
            -
                  @mock_task =  | 
| 1562 | 
            -
                  @mock_task. | 
| 1563 | 
            -
                  @mock_task. | 
| 1564 | 
            -
                   | 
| 1565 | 
            -
                  Win32::TaskScheduler.stubs(:new).returns(@mock_task)
         | 
| 1557 | 
            +
                  @mock_task = instance_double(Win32::TaskScheduler)
         | 
| 1558 | 
            +
                  allow(@mock_task).to receive(:exists?).and_return(true)
         | 
| 1559 | 
            +
                  allow(@mock_task).to receive(:activate)
         | 
| 1560 | 
            +
                  allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task)
         | 
| 1566 1561 |  | 
| 1567 1562 | 
             
                  @command = 'C:\Windows\System32\notepad.exe'
         | 
| 1568 1563 | 
             
                end
         | 
| @@ -1573,8 +1568,8 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1573 1568 | 
             
                  end
         | 
| 1574 1569 |  | 
| 1575 1570 | 
             
                  it 'should save the task' do
         | 
| 1576 | 
            -
                    @mock_task. | 
| 1577 | 
            -
                    @mock_task. | 
| 1571 | 
            +
                    expect(@mock_task).to receive(:set_account_information).with(nil, nil)
         | 
| 1572 | 
            +
                    expect(@mock_task).to receive(:save)
         | 
| 1578 1573 |  | 
| 1579 1574 | 
             
                    resource.provider.flush
         | 
| 1580 1575 | 
             
                  end
         | 
| @@ -1595,17 +1590,17 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1595 1590 | 
             
                describe 'when :ensure is :absent' do
         | 
| 1596 1591 | 
             
                  before :each do
         | 
| 1597 1592 | 
             
                    @ensure = :absent
         | 
| 1598 | 
            -
                    @mock_task. | 
| 1593 | 
            +
                    allow(@mock_task).to receive(:activate)
         | 
| 1599 1594 | 
             
                  end
         | 
| 1600 1595 |  | 
| 1601 1596 | 
             
                  it 'should not save the task if :ensure is :absent' do
         | 
| 1602 | 
            -
                    @mock_task. | 
| 1597 | 
            +
                    expect(@mock_task).not_to receive(:save)
         | 
| 1603 1598 |  | 
| 1604 1599 | 
             
                    resource.provider.flush
         | 
| 1605 1600 | 
             
                  end
         | 
| 1606 1601 |  | 
| 1607 1602 | 
             
                  it 'should not fail if the command is not specified' do
         | 
| 1608 | 
            -
                    @mock_task. | 
| 1603 | 
            +
                    allow(@mock_task).to receive(:save)
         | 
| 1609 1604 |  | 
| 1610 1605 | 
             
                    resource = Puppet::Type.type(:scheduled_task).new(
         | 
| 1611 1606 | 
             
                      :name    => 'Test Task',
         | 
| @@ -1626,16 +1621,15 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1626 1621 | 
             
                end
         | 
| 1627 1622 |  | 
| 1628 1623 | 
             
                before :each do
         | 
| 1629 | 
            -
                    @mock_task =  | 
| 1630 | 
            -
                    @mock_task. | 
| 1631 | 
            -
                    @mock_task. | 
| 1632 | 
            -
                     | 
| 1633 | 
            -
                    Win32::TaskScheduler.stubs(:new).returns(@mock_task)
         | 
| 1624 | 
            +
                    @mock_task = instance_double(Win32::TaskScheduler)
         | 
| 1625 | 
            +
                    allow(@mock_task).to receive(:exists?).and_return(true)
         | 
| 1626 | 
            +
                    allow(@mock_task).to receive(:activate)
         | 
| 1627 | 
            +
                    allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task)
         | 
| 1634 1628 | 
             
                end
         | 
| 1635 1629 |  | 
| 1636 1630 | 
             
                describe '#command=' do
         | 
| 1637 1631 | 
             
                  it 'should set the application_name on the task' do
         | 
| 1638 | 
            -
                    @mock_task. | 
| 1632 | 
            +
                    expect(@mock_task).to receive(:application_name=).with('C:\Windows\System32\notepad.exe')
         | 
| 1639 1633 |  | 
| 1640 1634 | 
             
                    resource.provider.command = 'C:\Windows\System32\notepad.exe'
         | 
| 1641 1635 | 
             
                  end
         | 
| @@ -1643,7 +1637,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1643 1637 |  | 
| 1644 1638 | 
             
                describe '#arguments=' do
         | 
| 1645 1639 | 
             
                  it 'should set the parameters on the task' do
         | 
| 1646 | 
            -
                    @mock_task. | 
| 1640 | 
            +
                    expect(@mock_task).to receive(:parameters=).with(['/some /arguments /here'])
         | 
| 1647 1641 |  | 
| 1648 1642 | 
             
                    resource.provider.arguments = ['/some /arguments /here']
         | 
| 1649 1643 | 
             
                  end
         | 
| @@ -1651,7 +1645,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1651 1645 |  | 
| 1652 1646 | 
             
                describe '#working_dir=' do
         | 
| 1653 1647 | 
             
                  it 'should set the working_directory on the task' do
         | 
| 1654 | 
            -
                    @mock_task. | 
| 1648 | 
            +
                    expect(@mock_task).to receive(:working_directory=).with('C:\Windows\System32')
         | 
| 1655 1649 |  | 
| 1656 1650 | 
             
                    resource.provider.working_dir = 'C:\Windows\System32'
         | 
| 1657 1651 | 
             
                  end
         | 
| @@ -1659,15 +1653,15 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1659 1653 |  | 
| 1660 1654 | 
             
                describe '#enabled=' do
         | 
| 1661 1655 | 
             
                  it 'should set the disabled flag if the task should be disabled' do
         | 
| 1662 | 
            -
                    @mock_task. | 
| 1663 | 
            -
                    @mock_task. | 
| 1656 | 
            +
                    allow(@mock_task).to receive(:flags).and_return(0)
         | 
| 1657 | 
            +
                    expect(@mock_task).to receive(:flags=).with(Win32::TaskScheduler::DISABLED)
         | 
| 1664 1658 |  | 
| 1665 1659 | 
             
                    resource.provider.enabled = :false
         | 
| 1666 1660 | 
             
                  end
         | 
| 1667 1661 |  | 
| 1668 1662 | 
             
                  it 'should clear the disabled flag if the task should be enabled' do
         | 
| 1669 | 
            -
                    @mock_task. | 
| 1670 | 
            -
                    @mock_task. | 
| 1663 | 
            +
                    allow(@mock_task).to receive(:flags).and_return(Win32::TaskScheduler::DISABLED)
         | 
| 1664 | 
            +
                    expect(@mock_task).to receive(:flags=).with(0)
         | 
| 1671 1665 |  | 
| 1672 1666 | 
             
                    resource.provider.enabled = :true
         | 
| 1673 1667 | 
             
                  end
         | 
| @@ -1683,11 +1677,10 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1683 1677 | 
             
                  end
         | 
| 1684 1678 |  | 
| 1685 1679 | 
             
                  before :each do
         | 
| 1686 | 
            -
                    @mock_task =  | 
| 1687 | 
            -
                    @mock_task. | 
| 1688 | 
            -
                    @mock_task. | 
| 1689 | 
            -
                     | 
| 1690 | 
            -
                    Win32::TaskScheduler.stubs(:new).returns(@mock_task)
         | 
| 1680 | 
            +
                    @mock_task = instance_double(Win32::TaskScheduler)
         | 
| 1681 | 
            +
                    allow(@mock_task).to receive(:exists?).and_return(true)
         | 
| 1682 | 
            +
                    allow(@mock_task).to receive(:activate)
         | 
| 1683 | 
            +
                    allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task)
         | 
| 1691 1684 | 
             
                  end
         | 
| 1692 1685 |  | 
| 1693 1686 | 
             
                  it 'should not consider all duplicate current triggers in sync with a single desired trigger' do
         | 
| @@ -1697,9 +1690,9 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1697 1690 | 
             
                      {'schedule' => 'once', 'start_date' => '2011-09-15', 'start_time' => '15:10', 'index' => 1},
         | 
| 1698 1691 | 
             
                      {'schedule' => 'once', 'start_date' => '2011-09-15', 'start_time' => '15:10', 'index' => 2},
         | 
| 1699 1692 | 
             
                    ]
         | 
| 1700 | 
            -
                    resource.provider. | 
| 1701 | 
            -
                    @mock_task. | 
| 1702 | 
            -
                    @mock_task. | 
| 1693 | 
            +
                    allow(resource.provider).to receive(:trigger).and_return(current_triggers)
         | 
| 1694 | 
            +
                    expect(@mock_task).to receive(:delete_trigger).with(1)
         | 
| 1695 | 
            +
                    expect(@mock_task).to receive(:delete_trigger).with(2)
         | 
| 1703 1696 |  | 
| 1704 1697 | 
             
                    resource.provider.trigger = @trigger
         | 
| 1705 1698 | 
             
                  end
         | 
| @@ -1711,9 +1704,9 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1711 1704 | 
             
                      {'schedule' => 'once', 'start_date' => '2012-09-15', 'start_time' => '15:10', 'index' => 1},
         | 
| 1712 1705 | 
             
                      {'schedule' => 'once', 'start_date' => '2013-09-15', 'start_time' => '15:10', 'index' => 2},
         | 
| 1713 1706 | 
             
                    ]
         | 
| 1714 | 
            -
                    resource.provider. | 
| 1715 | 
            -
                    @mock_task. | 
| 1716 | 
            -
                    @mock_task. | 
| 1707 | 
            +
                    allow(resource.provider).to receive(:trigger).and_return(current_triggers)
         | 
| 1708 | 
            +
                    expect(@mock_task).to receive(:delete_trigger).with(1)
         | 
| 1709 | 
            +
                    expect(@mock_task).to receive(:delete_trigger).with(2)
         | 
| 1717 1710 |  | 
| 1718 1711 | 
             
                    resource.provider.trigger = @trigger
         | 
| 1719 1712 | 
             
                  end
         | 
| @@ -1727,9 +1720,9 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1727 1720 | 
             
                    current_triggers = [
         | 
| 1728 1721 | 
             
                      {'schedule' => 'once', 'start_date' => '2011-09-15', 'start_time' => '15:10', 'index' => 0},
         | 
| 1729 1722 | 
             
                    ]
         | 
| 1730 | 
            -
                    resource.provider. | 
| 1731 | 
            -
                    @mock_task. | 
| 1732 | 
            -
                    @mock_task. | 
| 1723 | 
            +
                    allow(resource.provider).to receive(:trigger).and_return(current_triggers)
         | 
| 1724 | 
            +
                    expect(@mock_task).to receive(:trigger=).with(resource.provider.translate_hash_to_trigger(@trigger[1]))
         | 
| 1725 | 
            +
                    expect(@mock_task).to receive(:trigger=).with(resource.provider.translate_hash_to_trigger(@trigger[2]))
         | 
| 1733 1726 |  | 
| 1734 1727 | 
             
                    resource.provider.trigger = @trigger
         | 
| 1735 1728 | 
             
                  end
         | 
| @@ -1737,15 +1730,14 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1737 1730 |  | 
| 1738 1731 | 
             
                describe '#user=', :if => Puppet.features.microsoft_windows? do
         | 
| 1739 1732 | 
             
                  before :each do
         | 
| 1740 | 
            -
                    @mock_task =  | 
| 1741 | 
            -
                    @mock_task. | 
| 1742 | 
            -
                    @mock_task. | 
| 1743 | 
            -
                     | 
| 1744 | 
            -
                    Win32::TaskScheduler.stubs(:new).returns(@mock_task)
         | 
| 1733 | 
            +
                    @mock_task = instance_double(Win32::TaskScheduler)
         | 
| 1734 | 
            +
                    allow(@mock_task).to receive(:exists?).and_return(true)
         | 
| 1735 | 
            +
                    allow(@mock_task).to receive(:activate)
         | 
| 1736 | 
            +
                    allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task)
         | 
| 1745 1737 | 
             
                  end
         | 
| 1746 1738 |  | 
| 1747 1739 | 
             
                  it 'should use nil for user and password when setting the user to the SYSTEM account' do
         | 
| 1748 | 
            -
                    Puppet::Util::Windows::SID. | 
| 1740 | 
            +
                    allow(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('system').and_return('SYSTEM SID')
         | 
| 1749 1741 |  | 
| 1750 1742 | 
             
                    resource = Puppet::Type.type(:scheduled_task).new(
         | 
| 1751 1743 | 
             
                      :name    => 'Test Task',
         | 
| @@ -1753,13 +1745,13 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1753 1745 | 
             
                      :user    => 'system'
         | 
| 1754 1746 | 
             
                    )
         | 
| 1755 1747 |  | 
| 1756 | 
            -
                    @mock_task. | 
| 1748 | 
            +
                    expect(@mock_task).to receive(:set_account_information).with(nil, nil)
         | 
| 1757 1749 |  | 
| 1758 1750 | 
             
                    resource.provider.user = 'system'
         | 
| 1759 1751 | 
             
                  end
         | 
| 1760 1752 |  | 
| 1761 1753 | 
             
                  it 'should use the specified user and password when setting the user to anything other than SYSTEM' do
         | 
| 1762 | 
            -
                    Puppet::Util::Windows::SID. | 
| 1754 | 
            +
                    allow(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('my_user_name').and_return('SID A')
         | 
| 1763 1755 |  | 
| 1764 1756 | 
             
                    resource = Puppet::Type.type(:scheduled_task).new(
         | 
| 1765 1757 | 
             
                      :name     => 'Test Task',
         | 
| @@ -1768,7 +1760,7 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1768 1760 | 
             
                      :password => 'my password'
         | 
| 1769 1761 | 
             
                    )
         | 
| 1770 1762 |  | 
| 1771 | 
            -
                    @mock_task. | 
| 1763 | 
            +
                    expect(@mock_task).to receive(:set_account_information).with('my_user_name', 'my password')
         | 
| 1772 1764 |  | 
| 1773 1765 | 
             
                    resource.provider.user = 'my_user_name'
         | 
| 1774 1766 | 
             
                  end
         | 
| @@ -1793,69 +1785,67 @@ describe Puppet::Type.type(:scheduled_task).provider(:win32_taskscheduler), :if | |
| 1793 1785 | 
             
                  @arguments   = '/a /list /of /arguments'
         | 
| 1794 1786 | 
             
                  @working_dir = 'C:\Windows\Some\Directory'
         | 
| 1795 1787 |  | 
| 1796 | 
            -
                  @mock_task =  | 
| 1797 | 
            -
                  @mock_task. | 
| 1798 | 
            -
                  @mock_task. | 
| 1799 | 
            -
                  @mock_task. | 
| 1800 | 
            -
                  @mock_task. | 
| 1801 | 
            -
                  @mock_task. | 
| 1802 | 
            -
                  @mock_task. | 
| 1803 | 
            -
                  @mock_task. | 
| 1804 | 
            -
                  @mock_task. | 
| 1805 | 
            -
                  @mock_task. | 
| 1806 | 
            -
                  @mock_task. | 
| 1807 | 
            -
                  @mock_task. | 
| 1808 | 
            -
                   | 
| 1809 | 
            -
                  Win32::TaskScheduler.stubs(:new).returns(@mock_task)
         | 
| 1788 | 
            +
                  @mock_task = instance_double(Win32::TaskScheduler)
         | 
| 1789 | 
            +
                  allow(@mock_task).to receive(:exists?).and_return(true)
         | 
| 1790 | 
            +
                  allow(@mock_task).to receive(:activate)
         | 
| 1791 | 
            +
                  allow(@mock_task).to receive(:application_name=)
         | 
| 1792 | 
            +
                  allow(@mock_task).to receive(:parameters=)
         | 
| 1793 | 
            +
                  allow(@mock_task).to receive(:working_directory=)
         | 
| 1794 | 
            +
                  allow(@mock_task).to receive(:set_account_information)
         | 
| 1795 | 
            +
                  allow(@mock_task).to receive(:flags)
         | 
| 1796 | 
            +
                  allow(@mock_task).to receive(:flags=)
         | 
| 1797 | 
            +
                  allow(@mock_task).to receive(:trigger_count).and_return(0)
         | 
| 1798 | 
            +
                  allow(@mock_task).to receive(:trigger=)
         | 
| 1799 | 
            +
                  allow(@mock_task).to receive(:save)
         | 
| 1800 | 
            +
                  allow(Win32::TaskScheduler).to receive(:new).and_return(@mock_task)
         | 
| 1810 1801 |  | 
| 1811 | 
            -
                  described_class. | 
| 1802 | 
            +
                  allow_any_instance_of(described_class).to receive(:sync_triggers)
         | 
| 1812 1803 | 
             
                end
         | 
| 1813 1804 |  | 
| 1814 1805 | 
             
                it 'should set the command' do
         | 
| 1815 | 
            -
                  resource.provider. | 
| 1806 | 
            +
                  expect(resource.provider).to receive(:command=).with(@command)
         | 
| 1816 1807 |  | 
| 1817 1808 | 
             
                  resource.provider.create
         | 
| 1818 1809 | 
             
                end
         | 
| 1819 1810 |  | 
| 1820 1811 | 
             
                it 'should set the arguments' do
         | 
| 1821 | 
            -
                  resource.provider. | 
| 1812 | 
            +
                  expect(resource.provider).to receive(:arguments=).with(@arguments)
         | 
| 1822 1813 |  | 
| 1823 1814 | 
             
                  resource.provider.create
         | 
| 1824 1815 | 
             
                end
         | 
| 1825 1816 |  | 
| 1826 1817 | 
             
                it 'should set the working_dir' do
         | 
| 1827 | 
            -
                  resource.provider. | 
| 1818 | 
            +
                  expect(resource.provider).to receive(:working_dir=).with(@working_dir)
         | 
| 1828 1819 |  | 
| 1829 1820 | 
             
                  resource.provider.create
         | 
| 1830 1821 | 
             
                end
         | 
| 1831 1822 |  | 
| 1832 1823 | 
             
                it "should set the user" do
         | 
| 1833 | 
            -
                  resource.provider. | 
| 1824 | 
            +
                  expect(resource.provider).to receive(:user=).with(:system)
         | 
| 1834 1825 |  | 
| 1835 1826 | 
             
                  resource.provider.create
         | 
| 1836 1827 | 
             
                end
         | 
| 1837 1828 |  | 
| 1838 1829 | 
             
                it 'should set the enabled property' do
         | 
| 1839 | 
            -
                  resource.provider. | 
| 1830 | 
            +
                  expect(resource.provider).to receive(:enabled=)
         | 
| 1840 1831 |  | 
| 1841 1832 | 
             
                  resource.provider.create
         | 
| 1842 1833 | 
             
                end
         | 
| 1843 1834 |  | 
| 1844 1835 | 
             
                it 'should sync triggers' do
         | 
| 1845 | 
            -
                  resource.provider. | 
| 1836 | 
            +
                  expect(resource.provider).to receive(:trigger=)
         | 
| 1846 1837 |  | 
| 1847 1838 | 
             
                  resource.provider.create
         | 
| 1848 1839 | 
             
                end
         | 
| 1849 1840 | 
             
              end
         | 
| 1850 1841 |  | 
| 1851 1842 | 
             
              describe "Win32::TaskScheduler", :if => Puppet.features.microsoft_windows? do
         | 
| 1852 | 
            -
             | 
| 1853 1843 | 
             
                let(:name) { SecureRandom.uuid }
         | 
| 1854 1844 |  | 
| 1855 1845 | 
             
                describe 'sets appropriate generic trigger defaults' do
         | 
| 1856 1846 | 
             
                  before(:each) do
         | 
| 1857 1847 | 
             
                    @now = Time.now
         | 
| 1858 | 
            -
                    Time. | 
| 1848 | 
            +
                    allow(Time).to receive(:now).and_return(@now)
         | 
| 1859 1849 | 
             
                  end
         | 
| 1860 1850 |  | 
| 1861 1851 | 
             
                  it 'for a ONCE schedule' do
         |